タグ

ブックマーク / moznion.hatenadiary.com (2)

  • Dockerコンテナ内でpuppeteerを使うとChromeゾンビプロセスがたまる問題 - その手の平は尻もつかめるさ

    表題のような問題があり,その調査したという記録です.なお,結論を一言で言うと--initを使え,ということになります. そもそもDockerコンテナを起動すると,CMDあるいはENTRYPOINTに指定されたコマンドがコンテナ内でPID 1として起動します.これが何を意味するかと言うと,「CMDあるいはENTRYPOINTに指定されたコマンド」はそのコマンド自体の責務をまっとうするのと同時に,initプロセスとしての振る舞いも行わなければならないということになります (id:hayajo_77さんにこの辺を詳しく教えてもらいました,ありがとうございます). つまりPID 1で動いているプロセスは「SIGCHLDをトラップすることで孤児プロセスを適切に回収し,waitpidをかける」という処理も適切に行う必要があります. さて,puppeteerを使ってChromeブラウザを起動するとどうな

    Dockerコンテナ内でpuppeteerを使うとChromeゾンビプロセスがたまる問題 - その手の平は尻もつかめるさ
    higed
    higed 2019/03/02
  • 快適な連打機能を提供するためにサーバサイドが出来ること - その手の平は尻もつかめるさ

    人間生きていると高確率で連打機能を提供するシステムを構築する必要が出てくることがあります. 例えばあるコンテンツについてボタンを連打することで「良いね」を表明するようなシステムです. 連打は楽しい!! しかし実装する方としては純粋に楽しんでばかりはいられません. こうしたシステムは素朴に実装したとしてもある程度のトラフィックまでは耐えられるかもしれませんが,ある規模を超えると安定して機能提供する事は難しくなってくるかもしれません. ここでは,サーバサイドの話題を中心として,快適な連打機能を提供するシステムをどうすれば提供できるかを考えていきます (あくまで一例です). 想定としては, あるコンテンツについてボタンが付いていて,そのボタンは連打が出来る あるコンテンツについてボタンが何回押されたかを取得できる というシステムを仮定します. なんとなく結論が分かる雑な図 題 サーバを分離する

    快適な連打機能を提供するためにサーバサイドが出来ること - その手の平は尻もつかめるさ
  • 1