Skip to content

pawelkuk/dibs

Repository files navigation

Master thesis

Architecture

Architecture diagram

TODO:

  • pgadmin init config
  • implement db per app
  • paying service
  • ticketing service
  • scripts for initial data
  • read model service
    • update read service during saga
    • push updates to FE
  • FE
    • room component
    • post request
    • seat picker
    • update room after read service update
    • fix bug where too many sockets were being created
  • integration tests
    • paying
    • ticketing
  • orchestrating service/choreographing
    • setup rabbitmq + celery
    • setup auto-reload for celery
    • write controller (saga workflow) as celery task/multiple tasks
  • experiment
    • save time of reservation for further analysis
    • save duration of the reservation for further analysis
    • script which will reserve seats concurrently
    • alternative - wait for response and only then send next request
    • stats from experiments
      • avg time to reserve seats
      • number of requests which failed
      • number of requests which succeeded
      • time of experiment
    • find out why inconsistent reservations appear
    • check that payments and ticket renders are all correct
    • check for correctness under heavy load
    • write trigger/check for uniqueness of reserved seats
    • different container for read and write path (CQRS) because due to writes reads become unresponsive due to queueing up requests on django
    • read model service shows all screenings instead of just one with uuid given in url
    • benchmark rewrite to CLI
    • fix amount of queries generated by orm
  • distributed transactions approach
  • use uwsgi instead of django dev server
  • check periodically for updates in read model service
  • add spinner to FE
  • remove screening endpoint (mark as full)
  • update benchmarking script to creating/deleting screenings
  • gather data for thesis
  • visualize data
    • high load
      • time to reserve all seats (or almost all)
        • avg
        • std dev
        • distribution
      • time to complete a reservation
        • avg
        • std dev
        • distribution
      • success/failure rate (status code >= 400)
        • avg
        • std dev
        • distribution
    • small load
      • time to reserve all seats (or almost all)
        • avg
        • std dev
        • distribution
      • time to complete a reservation
        • avg
        • std dev
        • distribution
      • success/failure rate (status code >= 400)
        • avg
        • std dev
        • distribution
  • write thesis
    • abstract,
    • introduction,
    • related work,
    • system design,
    • implementation,
    • evaluation,
    • conclusion,
    • bibliography
    • acknowledgements
    • appendix

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published