Upgrade to Pro — share decks privately, control downloads, hide ads and more …

StreetVoice: From Windows/ASP to Linux/Python

StreetVoice: From Windows/ASP to Linux/Python

C136e508049103f37d35b6c3314e9b1d?s=128

Ming Shien Tzang

May 25, 2013
Tweet

Transcript

  1. From Windows/ASP to Linux/Python by @tzangms

  2. musician @tzangms CTO of StreetVoice 小海

  3. What we do at StreetVoice

  4. Online.Offline

  5. TV Shows

  6. Events

  7. Campus tours

  8. Website, of course!

  9. 1 Problems when I join StreetVoice

  10. Not Scalable

  11. ASP is too old not even ASP.net

  12. REBOOT Windows Update your server

  13. Automatically!

  14. Poor Database performance

  15. Problem file structures /profile/1/image.jpg /profile/2/image.jpg /profile/3/image.jpg . . . /profile/999999/image.jpg

  16. And we do so many things. etc ...

  17. With just 3 developers at that time.

  18. How do I convince my boss to use python?

  19. None
  20. None
  21. None
  22. None
  23. None
  24. None
  25. 阿怪: ⾳音樂⼈人就該⽤用 Django

  26. 但其實說服⽼老闆 我是⽤用唬爛的

  27. 因為我當時根本不會寫 Python 阿!

  28. Migrate

  29. Django / ASP I have to run at the same

    time!
  30. I migrate User data first.

  31. Single sign on to make both Django/ASP login at the

    same time
  32. /music/* /account/* /anything not ported yet.

  33. Migrate database from Microsoft SQL Server 2000 to MySQL

  34. Migrate file structure I have to move lots of files,

    and update database /profile/1/image.jpg /profile/2/image.jpg /profile/3/image.jpg . . . /profile/999999/image.jpg
  35. Since StreetVoice has been running for years, so ..

  36. There are so many data

  37. It’s Hell ...

  38. I repeated all these steps, again and again

  39. After 1.5 year

  40. we finally Windows / ASP killed

  41. What took me so long?

  42. lots of cases and support

  43. like...

  44. None
  45. Training existing developer not familiar with open source

  46. From no VCS, then Mercurial, now Git

  47. What we use now?

  48. None
  49. Database

  50. Memcache: johnny-cache

  51. Message Queue: Celery + RabbitMQ

  52. Fulltext search: Haystack + Solr

  53. Exception Logging: Sentry

  54. We even open source now just get started

  55. Yes, We’re getting better and better.

  56. Come join us! Python, Frontend, iOS, Sys Admin

  57. Mail me tzangms@streetvoice.com

  58. Any Questions?