Page MenuHomePhabricator

Wikimedia Technical Conference 2018 Session - Architecting core: stand-alone services
Closed, ResolvedPublic

Description

Session Themes and Topics

  • Theme: Architecting our code for change and sustainability
  • Topic: Definition of Core, how code fits together, architecture, code encapsulation, FE/BE separation, extension interface

Session Leader

  • Ian Marlier

Facilitator

  • Birgit Mueller

Description

This session has two purposes:
Determine which functionality should be extracted from MediaWiki core into a stand-alone service, and how that should be achieved. (Answers will likely be driven by technical details; scalability, flexibility of location, etc)

Questions to answer during this session

QuestionSignificance: Why is this question important? What is blocked by it remaining unanswered?
What guidelines and qualities do we use for identifying what functionality is a candidate to be developed in a separate service for Wikimedia projects? Specifically consider security, and scalability.Have clear criteria for this decision will allow us to make decisions on creating stand.-alone services more quickly and with more confidence.
Given the above, what components of MediaWiki are better served by services?This identifies and prioritizes potential work packages and next steps.
What impediments and blockers do we have for developing components as services? Specifically consider monitoring and maintenance, the need to access further services (e.g. for storage or logging) and the impact on network topology.This ensures we consider operational costs and infrastructure investments when deciding on the creation of stand-alone services
How can the service be operated by 3rd parties, and what is the alternative?Ensure we consider the cost of either not providing the functionality in question on a vanilla LAMP stack, or the cost of maintaining a second in-process implementation.

Facilitator and Scribe notes

Facilitator reminders

Session Structure

  • (5 minutes) Introduce session and exercises
  • (15 minutes) First exercise
    • What properties make a feature a candidate for extraction in to a separate service?
    • What properties disqualify a feature from extraction in to a separate service?
  • (15 minutes) Second exercise
    • What MediaWiki functionality is currently provided by external services? Are there easy wins in re-integrating any of this functionality?
    • What MediaWiki functionality is integrated now, but is a candidate to be pulled out? Are there easy wins in doing the work of pulling out any of this functionality?
  • (15 minutes) Third exercise
    • What technical or architectural requirements apply to all standalone services?
    • What technical or architectural requirements apply to standalone services that are running in Wikimedia's production environment?
    • What technical or architectural requirements apply to standalone services that may be run by third parties?

Session Leaders please:

  • Add more details to this task description.
  • Coordinate any pre-event discussions (here on Phab, IRC, email, hangout, etc).
  • Outline the plan for discussing this topic at the event.
  • Optionally, include what it will not try to solve.
  • Update this task with summaries of any pre-event discussions.
  • Include ways for people not attending to be involved in discussions before the event and afterwards.

Post-event Summary:

Action items:

  • @Imarlier to create an RFP that formalizes the output of this session.

Event Timeline

kchapman renamed this task from Wikimedia Technical Conference 2018 Session - Core: stand-alone services to Wikimedia Technical Conference 2018 Session - Architecting core: stand-alone services.Oct 3 2018, 2:25 AM
debt added a subscriber: Bmueller.
debt updated the task description. (Show Details)
debt updated the task description. (Show Details)

RfC has been written up and submitted as T208524, which completes the tasks for this session.