Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor Prebid-Server to be a more flexible platform #3961

Open
scr-oath opened this issue Oct 9, 2024 · 1 comment
Open

Refactor Prebid-Server to be a more flexible platform #3961

scr-oath opened this issue Oct 9, 2024 · 1 comment

Comments

@scr-oath
Copy link

scr-oath commented Oct 9, 2024

Context

Companies who host their own prebid server may need to configure, customize, and extend it for their own needs.

At the moment, the main method and its helpers are all private, and every adapter, module, analytics is decided by PBS.

This proposal (a placeholder requested during the Server PMC) would be to refactor the code to be used a as a library. Some reference libraries/examples are http.Server, or for the powerful function options pattern, the open-telemetry library (TracerProvider, e.g.)

The end result and goals are that hosting providers be able to:

  1. Configure the server
  2. Launch the server
  3. Mock the launch for testing
  4. Add modules
  5. Add adapters
  6. Add analytics
  7. Add MetricsEngines and choose them
  8. Add more endpoints - or just get the configured httprouter and use that.
@bretg
Copy link
Contributor

bretg commented Oct 18, 2024

Discussed in committee

  • The ask is to allow PBS-core platform to be way more configurable. Use cases:
    • allowing the addition of bid adapters and analytics adapters
    • adding metrics engines
    • add modules
    • add telemetry engine
    • add storage backends
    • easier to add custom endpoints
  • e.g. for Go, export server start routine and make it overridable
  • One idea is that host companies could re-write main and pull in their own components.

Next steps:

  • @scr-oath is willing to share a proof-of-concept in a PR for the PBS-Go team to review
  • Continue this conversation on #prebid-server-dev Slack channel

@bretg bretg changed the title [Placeholder from PMC]: Allow Prebid-Server to be used like a library (configure + start; not main) Refactor Prebid-Server to be a more flexible platform Oct 18, 2024
@bretg bretg moved this from Triage to Clarify Request in Prebid Server Prioritization Oct 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Clarify Request
Development

No branches or pull requests

2 participants