GCPのgemにコントリビュートした話

 GCPのgemにコントリビュートした話

C3b68d6841dcd343be9685f1cdaf8ac9?s=128

Atsushi Tanaka

July 31, 2019
Tweet

Transcript

  1. ©2019 Wantedly, Inc. ($1ͷHFNʹίϯτϦϏϡʔτͨ͠࿩ Meguro.rb #29 LT 31.Jul.2019 - Atsushi

    Tanaka @bgpat
  2. ©2019 Wantedly, Inc. @bgpat / Atsushi Tanaka Infrastructure Engineer at

    Wantedly, Inc.
 
 ࣾ಺ʹ Google Cloud Pub/Sub Λ޿ΊΑ͏ͱ͍ͯ͠Δਓ
  3. ©2019 Wantedly, Inc. w ($1ͷαʔϏε w ϚΠΫϩαʔϏεؒͰ
 ඇಉظ௨৴͢ΔͨΊʹಋೖ w 3VCZ΋αϙʔτ͍ͯ͠Δ


    HPPHMFDMPVEQVCTVC (PPHMF$MPVE1VC4VC https://cloud.google.com/pubsub/docs/overview
  4. ©2019 Wantedly, Inc.

  5. ©2019 Wantedly, Inc. ($1ͷHFNʹDPOUSJCVUF͠·ͨ͠

  6. ©2019 Wantedly, Inc. ϓϧϦΫΛ௨͢·ͰͷܦҢ ো֐ରԠ ࠓ೔࿩͢͜ͱ

  7. ©2019 Wantedly, Inc.  ໰୊ൃੜ  ௐࠪ  मਖ਼ύονΛग़͢ ࠓ೔࿩͢͜ͱ

  8. ©2019 Wantedly, Inc. ໰୊ൃੜ Ϣʔβʔ ਺ඦສਓ ʹҰ੪௨஌ΛૹΖ͏ͱ͍ͯͨ͠ w σΠϦʔͷόονδϣϒͱ࣮ͯ͠ߦ w

    ͳ్͔ͥதͰࢭ·Δ w ͍ͭ·Ͱܦͬͯ΋ૹ৴͠ऴΘΒͳ͍ w Τϥʔ͕ग़͍ͯΔΘ͚Ͱ͸ͳ͍
  9. ©2019 Wantedly, Inc. ௐࠪ Ͳ͏͍͏৚݅Ͱ໰୊͕ൃੜ͢Δͷ͔஌Δ w ૹ৴ΛඇಉظͰߦ͏ͱ్தͰࢭ·Δ w HPPHMFDMPVEQVCTVCͰ͸QVCMJTIʢಉظʣͱQVCMJTI@BTZODʢඇಉظʣ͕࢖͑Δ w

    ಺෦ͰDPODVSSFOUSVCZΛ࢖͍ͬͯΔ w ϝοηʔδͷ݅਺͕ଟ͍ͱى͜Δ w ਺ઍ݅ఔ౓Ͱ͸ಛʹ໰୊ͳ͘ૹ৴Ͱ͖Δ
  10. ©2019 Wantedly, Inc. ௐࠪ ݪҼͷ੾Γ෼͚ ࣅͨॲཧΛ͍ͯ͠ΔΞϓϦέʔγϣϯͱൺֱ͢Δ w ݅਺Λἧ͑ͯඇಉظͰૹ৴ ˰ ผͷΞϓϦέʔγϣϯ͸਺ສ݅ॲཧͯ͠΋ࢭ·Βͳ͔ͬͨ

    w ࠩ෼͸Ͳ͜ʹ͋Δʁ w ґଘ͢ΔHFNͷόʔδϣϯ͸ಉ͡ w ૹ৴͢Δ಺༰͸ҟͳΔ ˰ ໰୊͕ى͖ͳ͍ΞϓϦέʔγϣϯ͸%#ΞΫηεΛ͍ͯͨ͠
  11. ©2019 Wantedly, Inc. ௐࠪ ճආࡦ͕൑໌ %#ΞΫηεͷ͕࣌ؒॏཁʁ ʮશମ͕଎͘ͳΔ͜ͱͰσουϩοΫ͕ݦࡏԽ͍ͯ͠Δʁʯ TMFFQΛڬΜͰΈͨ w ૹ৴ˠඵ଴ͭ

    w ૹ৴͕٧·Δ͜ͱ͸ͳ͘ͳͬͨ
  12. ©2019 Wantedly, Inc. ௐࠪ ࠓޙͷରࡦͷͨΊʹ͞Βʹௐ΂Δ ໰୊͕ى͖Δͱ͖ͷϝτϦΫεͷมԽΛݟΔ w ϝοηʔδͷૹ৴ϖʔε 4UBDLESJWFS.POJUPSJOH͔Β$MPVE1VC4VCͷϝτϦΫε͕ݟΕΔ w

    3VCZ7.ͷϝτϦΫε w /FX3FMJDͷػೳͰऔΕΔʢࣾ಺Ͱ࢖͍ͬͯΔͷͰʣ w ϝϞϦ࢖༻཰ɾώʔϓαΠζɾ($ɾεϨου਺ͳͲ
  13. ©2019 Wantedly, Inc. ௐࠪ %#ΞΫηε͕͋Δ৔߹ ૹ৴ͷϖʔεΛൺֱ %#ΞΫηε͕ͳ͍৔߹

  14. ©2019 Wantedly, Inc. ௐࠪ %#ΞΫηε͕͋Δ৔߹ ૹ৴ͷϖʔεΛൺֱ %#ΞΫηε͕ͳ͍৔߹

  15. ©2019 Wantedly, Inc. ௐࠪ 3VCZ7.ͷϝτϦΫεΛൺֱ %#ΞΫηε͕͋Δ৔߹ %#ΞΫηε͕ͳ͍৔߹

  16. ©2019 Wantedly, Inc. ௐࠪ %#ΞΫηε͕͋Δ৔߹ 3VCZ7.ͷϝτϦΫεʢεϨου਺ʣΛൺֱ %#ΞΫηε͕ͳ͍৔߹

  17. ©2019 Wantedly, Inc. ௐࠪ %#ΞΫηε͕͋Δ৔߹ 3VCZ7.ͷϝτϦΫεʢεϨου਺ʣΛൺֱ %#ΞΫηε͕ͳ͍৔߹

  18. ©2019 Wantedly, Inc. ௐࠪ εϨου਺ଟ͗͢ͳ͍ʁ w ໰୊͕ى͖͍ͯͳͯ͘΋ݸۙ͘࡞ΒΕ͍ͯΔ w ໰୊͕ى͖Δ৔߹͸ສݸ࡞ΒΕ͍ͯΔ

  19. ©2019 Wantedly, Inc. ௐࠪ ϝοηʔδͷૹ৴࣌ʹ͸ ճ͔͠εϨου͸࡞ΒΕͳ͍͸ͣ https://github.com/googleapis/google-cloud-ruby/blob/7b87b46675ffce0b991f3678bfd4548195f11760/google-cloud-pubsub/lib/google/cloud/pubsub/async_publisher.rb#L79-L80

  20. ©2019 Wantedly, Inc. ௐࠪ εϨουΛ࡞Δؔ਺ΛϑοΫͯ͠ճ਺Λ਺͑ͨ ˰  ճεϨου͕࡞ΒΕ͍ͯΔ

  21. ©2019 Wantedly, Inc. ௐࠪ ݪҼ൑໌ ˰DPODVSSFOUSVCZͷ$BDIFE5ISFBE1PPMΛ࢖͍ͬͯͨ w NBY@UISFBETΛͰ্ॻ͖͍ͯ͠Δ w ݺͼग़͢ଆ͸౉ͤΔ͕࢖༻͞ΕͣΤϥʔ΋ग़ͳ͍

    w ࠷େ஋Λࢦఆ͢ΔͳΒ5ISFBE1PPM&YFDVUPSΛ࢖͏΂͖
  22. ©2019 Wantedly, Inc. मਖ਼ύονΛग़͢ ࠶ݱίʔυΛఴ͑ͯJTTVFͰใࠂ

  23. ©2019 Wantedly, Inc. मਖ਼ύονΛग़͢ ͍ͭͰʹϓϧϦΫ΋࡞੒

  24. ©2019 Wantedly, Inc. w 3VCZͰඇಉظॲཧΛ͢Δͷ͸೉͍͠ w /FX3FMJDͷ3VCZ7.͸ศར w 044ʹίϯτϦϏϡʔτͰ͖ͯخ͍͠ ·ͱΊʢײ૝ʣ