Overview – 概要 1.2.5 Simple web form - PC, Smartphone - Feature phone Bloadcasted by TV Insert data to DB
Challenge – 課題 5000 Insert/sec Req. was changed: 1K ins/sec -> 5K ins/sec ◦ Did customer confuse PV & Limit # DB connection matter?? for 2weeks!
Try – 試したこと Too many dynos(100dynos) ◦ × Connection Error Create stress tool on Heroku ◦ ○ Cut off network latency Effective use of thread Too many client(10000threads) ◦ × 503 Service unavailable Database sharding(Ika, Fugu, Ronin) ◦ × Out of memory Remove DATABASE_URL ◦ ○ Increase available connection Upgrade database(Ika -> Mecha) ◦ ◎ High CPU power
Question - Scalability What is the key consideration for Super high-traffic App? How to avoid the limit # of DB con(default max_conn ection=500)? ◦ Can I modify the configuration of PostgreSQL? What is the meaning of DATABASE_URL? ◦ What is bad if removing DATABASE_URL? How to handle the router’s performance? ◦ There are no logs when 503. How to distribute DB connection for each dynos? How is impact for other apps, network etc, when supe r high traffic apps be.
Question - Security How is secure the communication during each components of Heroku? Router -> Dynos(http) Dynos -> PostgresSQL(not SSL) Router/Dynos -> Logplex Apps -> Add-ons Apps -> Other apps ◦ SSL is required?