Do You Like JobQueue?

4f281220a0184205caf8f8a25c8e44a0?s=47 TAK WAT
September 24, 2016

Do You Like JobQueue?

PHP勉強会(仮)発表資料

4f281220a0184205caf8f8a25c8e44a0?s=128

TAK WAT

September 24, 2016
Tweet

Transcript

  1. WebΞϓϦͱόονॲཧͷͭͳ͗ ݹͯ͘৽͍͠Ωϡʔαʔόͷ͓࿩͠

  2. ࣗݾ঺հ ੨৿ݝീށࢢੜ·Ε ΞϥϑΥʔ͚ͩͲ·ͩ·ͩίʔυॻ͍ͯ·͢ ઋ୆ˠट౎ݍͰ10೥͙Β͍COBOL͔ΒWeb։ൃ·Ͱ ΍ͬͨޙʹઋ୆ࢢʹ໭Γ๭ࣾۈ຿ ࣾ಺SEͱͯࣾ͠಺֎ͷγεςϜ಺੡ ࠷ۙ͸Node.jsͱPHP൒ʑɺϚΠϒʔϜ͸Electron Qiita: https://qiita.com/khirose Twitter:

    @_takwat
  3. ͜Μͳ͜ͱ͋Γ·ͤΜ͔ʁ • େྔͷσʔλΛҰׅͰWebϒϥ΢βͷૢ࡞ΛτϦΨʹॲཧ͍ͨ͠ • Ξοϓϩʔυ͞ΕͨಈըͷΤϯίʔυͳͲσΧ͍ϑΝΠϧͷੜ੒ • σʔλϕʔεपΓͷඇৗʹॏ͍ͨॲཧ • ͋ΔݴޠͰॻ͘ͱਏ͍ॲཧ͕ผݴޠͩͱ༏ΕͨεοΩϦॻ͚Δͷʹɾɾɾ

  4. PHPͰϒϥ΢βͱͷ΍ΓͱΓΛ۪௚ʹॻ͘ͱ౰વ͜͏ͳΔ

  5. ͡Ό͋Ͳ͏͢Δʁ Webαʔό(ྫ:Apacheଆ)Ͱ Timeout 600 ִؒΛ୹ͨ͘͠cronͰ؂ࢹ ͦΜͳ෩ʹߟ͍͑ͯͨ࣌ظ͕Զʹ΋͋Γ·ͨ͠

  6. ͦΜͳ͜ͱΛͯͯ͠΋αʔό಺෦Ͱ͸ ύΠϓͱ͔Ͱॲཧͯ͠Δͱ౎౓ϓϩηε͕ੜ੒͞ΕΔ • ϝϞϦΛେྔʹ࢖͏ॲཧͩͬͨΓͨ͠Βʁ • Ϣʔβ͕଴͖ͪΕͳͯ͘ϦΫΤετϘλϯ࿈ଧͨ͠Βʁ ͦΓΌ΋͏஍ࠈͰ͢Αɾɾɾ

  7. ͱ͏͍͏Θ͚ͰɺδϣϒΩϡʔ࢖͍·͠ΐ͏ 1. δϣϒΛ౤͛ͯ 2. ΫϥΠΞϯτʹ͸ʮ࡞ۀґཔ͸͠·ͨ͠ʯͱใࠂͯ͠Ұ ౓Ϋϩʔζ 3. ޙΖͰ͸ϫʔΧʔ܈͕࡞ۀΛͻͨ͢Βߦ͍ͬͯΔͷͰ 4. ͋ͱ͸ϫʔΧʔ͔ΒͷऴྃใࠂΛ଴͚ͭͩ

  8. δϣϒΩϡʔΛ࢖ͬͨ৔߹ͷγʔέϯε

  9. ͭ·Γඇಉظॲཧ JavaScriptͷPromise HTML5ͷWeb Workers API C#ͷasync/await ඇಉظΛॻ͘ݴޠͷಓ۩͕૿͑ͨͷͰ֓೦తʹ͸Θ ͔Γ΍͍͔͢΋

  10. δϣϒΩϡʔΛ࢖͏৔߹ͷϝϦοτ • ౎౓ϓϩηεΛى͜͢ͷͰ͸ͳ͘ϫʔΧΛৗறͤ͞ΔͷͰىಈίετ͕͍҆ • ϊʔυͷεϖοΫʹ߹ΘͤͯϫʔΧʔ਺Λௐ੔Ͱ͖Δ • δϣϒͷͭ·ͬͨετϨʔδ͑͞ڞ༗͍ͯ͠Ε͹ϫʔΧʔ͸ෳ਺ϊʔυʹ෼ ࢄͰ͖Δ(Q4Mͷ৔߹δϣϒΩϡʔ͸MySQLͷςʔϒϧ1ݸ) • ݴޠόΠϯσΟϯά͑͞༻ҙͰ͖Ε͹ΩϡʔΛഔհʹͨ͠ผݴޠಉ࢜ͷ࿈ܞ

    ΋Ͱ͖Δ(Web APIͷ಺෦൛Έ͍ͨͳ࢖͍ํ)
  11. σϝϦοτ ো֐ൃੜϙΠϯτ͕૿͑Δ δϣϒΩϡʔαʔό͕ࢮΜͩΓΩϡʔͷετϨʔδ͕੦ͬͨΒऴΘΓ ͦ͜͸ΩϡʔͷετϨʔδ΍ϫʔΧʔͷ෼ࢄͰରॲ ඇಉظ͕֓೦తʹΘ͔Γʹ͍͘ਓ΋͍Δ ͙͢ը໘ʹ݁Ռ͕ग़Δ΋ͷͩͱࢥ͍ࠐΜͰ͍Δਓʹ͸ಛʹ ਐḿΛ໰͍߹ΘͤΔ͜ͱ͕Ͱ͖ͨΓίʔϧόοΫ͕͋ΔͷͰͦ͜͸্ख͘΍Ζ͏ ϦτϥΠΛͪΌΜͱߟ͑Α͏

  12. ࠓͷͱ͜Ζ ࣮຿Ͱ͸͜͜8೥΄Ͳ఻౷ͱྺ࢙ͷGearmanΛ࢖ͬͯ·͢ http://gearman.org/ ࠷ۙ͸RabbitMQ΋ϝδϟʔͲ͜Ζ http://www.rabbitmq.com/

  13. ۩ମతͳίʔυ͸ʁ gearmanͰ͙͙ͬͨΒ ੲࢲ͕Qiitaʹॻ͍ͨΤϯτϦ্͕ͷ΄͏ ʹɾɾɾ gearmanͰݕࡧͯ͠Ͷ

  14. ͋Γ͕ͱ͏͍͟͝·ͨ͠