$30 off During Our Annual Pro Sale. View Details »

Severless PHP Case : Agile Dashboard via GitLab Board API

Severless PHP Case : Agile Dashboard via GitLab Board API

本議程將分享如何利用 Serverless PHP,實作出敏捷儀表板 (Agile Dashboard) 定期報告的經驗。

過去每週我都會為三個技術團隊產生敏捷儀表板,以檢視團隊的敏捷健康度,並找出問題點。包括:Sprint 的團隊狀況、Sprint 的個人狀況、Burnup Chart、Cycle Time Chart 等。

流程上,團隊使用 GitLab Board 管理開發進度,各類事項的建置、進度與完成均在其上。為了配合產出合適的敏捷儀表板,我們也制定了一套「Label」管理辦法,可以為所有事項標示出必要的屬性,包括 Story points 等。如此,我只要透用 GitLab API 就可以隨時調出任何事項的異動狀態,並繪製出團隊所需要的報告。

技術上,為節省管理及維運成本,從工作排程 (例如每週一次)、程式部署 (Severless),到報告下載點 (Cloud Storage),均由雲端平台服務完成。

Yi-Feng Tzeng

July 28, 2020
Tweet

More Decks by Yi-Feng Tzeng

Other Decks in Technology

Transcript

  1. 曾義峰 (Ant)
    [email protected]
    2020-07-25
    Severless PHP Case
    Agile Dashboard via GitLab Board API

    View Slide

  2. 2/67
    LeadBest Consulting Group
    » 首席執行顧問
    TGONetworks
    » 台北分會學籍委員
    » 資安技術社群 CHROOT 成員
    13 年互聯網研發經驗, 4 年顧問資歷。
    具備銀行安全交易系統、電子票證系統、清分清算系統、機載娛樂系統、
    數位廣告 (Adtech) 平台、古典樂線上平台及高效能電腦集群入口平台等
    開發經驗。

    View Slide

  3. 3/67
    Credit : http://90sheji.com/png/wanshouji.html
    Pay for what I use (pay-as-you-go)
    Granular scaling
    Personalization (vs. SaaS)

    View Slide

  4. 4/67
    Serverless

    View Slide

  5. 5/67
    Credit : The Emergent Cloud Securiyt Toolchain for CI CD (2018-04).pdf

    View Slide

  6. 6/67
    Credit : https://specify.io/concepts/serverless-baas-faas

    View Slide

  7. 7/67
    Credit : https://read.acloud.guru/acg-faas-and-furious-b9574b6675c5

    View Slide

  8. 8/67
    Credit : Cloud Native Security 101 (2019-02-02).pdf

    View Slide

  9. 9/67
    Credit : Cloud Native Security 101 (2019-02-02).pdf

    View Slide

  10. 10/67
    Credit : https://twitter.com/dexhorthy/status/856639005462417409

    View Slide

  11. 11/67
    Credit : Monitoring Serverless Architectures (2017-06-21) - p9

    View Slide

  12. 12/67
    Serverless != No Server
    Serverless != No Server
    Serverless != NoOps
    ”Serverless” 非指不再涉及伺服器。
    ”Serverless” 意味著開發人員不再需為 ” Server” 煩惱太多。

    View Slide

  13. 13/67
    Serverless != No Server
    Serverless != No Server
    Serverless != NoOps
    ”Serverless” 非指不再涉及伺服器。
    ”Serverless” 意味著開發人員不再需為 ” Server” 煩惱太多。
    Serverless == LessOps

    View Slide

  14. 14/67
    如果說 Agile + IaaS 孵化了 DevOps ,
    那麼, Agile + BaaS + FaaS 則孕育了 Serverless 。

    View Slide

  15. 15/67
    Agile Dashboard

    View Slide

  16. 16/67

    View Slide

  17. 17/67

    View Slide

  18. 18/67

    View Slide

  19. 19/67

    View Slide

  20. 20/67
    Why Excel ?
    Stakeholders & MVP (GUI friendly)

    View Slide

  21. 21/67

    View Slide

  22. 22/67

    View Slide

  23. 23/67

    View Slide

  24. 24/67

    View Slide

  25. 25/67

    View Slide

  26. 26/67

    View Slide

  27. 27/67

    View Slide

  28. 28/67

    View Slide

  29. 29/67
    https://github.com/m4tthumphrey/php-gitlab-api
    »
    https://github.com/GitLabPHP/Client

    View Slide

  30. 30/67
    Credit : https://docs.gitlab.com/ee/api/api_resources.html

    View Slide

  31. 31/67
    Credit : https://docs.gitlab.com/ee/api/issues.html

    View Slide

  32. 32/67
    Credit : https://opensource.box.com/spout/

    View Slide

  33. 33/67
    Cold Start

    View Slide

  34. 34/67
    Cold Start ( 冷啟動 )
    Credit : https://azure.microsoft.com/en-us/blog/understanding-serverless-cold-start/

    View Slide

  35. 35/67
    Credit : Cloud Native Security 101 (2019-02-02).pdf

    View Slide

  36. 36/67
    Credit : https://fauna.com/blog/comparison-faas-providers

    View Slide

  37. 37/67
    Credit : https://mikhail.io/2018/08/serverless-cold-start-war/

    View Slide

  38. 38/67
    Credit : https://mikhail.io/serverless/coldstarts/aws/

    View Slide

  39. 39/67
    Credit : https://medium.com/the-theam-journey/benchmarking-aws-lambda-runtimes-in-2019-part-i-b1ee459a293d

    View Slide

  40. 40/67
    Credit : https://medium.com/the-theam-journey/benchmarking-aws-lambda-runtimes-in-2019-part-i-b1ee459a293d
    有沒有發現,清單中都沒有今日的主角, PHP 去哪了!

    View Slide

  41. 41/67
    PHP runtime for Serverless

    View Slide

  42. 42/67
    Credit : https://aws.amazon.com/lambda/faqs/

    View Slide

  43. 43/67
    Credit : https://aws.amazon.com/tw/blogs/apn/aws-lambda-custom-runtime-for-php-a-practical-example/

    View Slide

  44. 44/67
    Credit : https://bref.sh/

    View Slide

  45. 45/67
    Credit : https://mnapoli.fr/serverless-php-performances/

    View Slide

  46. 46/67
    雲架構

    View Slide

  47. 47/67
    CloudWatch
    Simple Email Service
    Simple Notification Service
    Simple Storage Service
    Lambda
    Step Functions Lambda
    Lambda

    View Slide

  48. 48/67
    CloudWatch
    Simple Email Service
    Simple Notification Service
    Simple Storage Service
    Lambda
    Step Functions Lambda
    Lambda
    解析

    View Slide

  49. 49/67
    Lambda

    View Slide

  50. 50/67
    Lambda
    Lambda
    Lambda

    View Slide

  51. 51/67
    Lambda
    Step Functions Lambda
    Lambda

    View Slide

  52. 52/67
    CloudWatch
    Lambda
    Step Functions Lambda
    Lambda

    View Slide

  53. 53/67
    CloudWatch
    Simple Storage Service
    Lambda
    Step Functions Lambda
    Lambda

    View Slide

  54. 54/67
    CloudWatch
    Simple Email Service
    Simple Storage Service
    Lambda
    Step Functions Lambda
    Lambda

    View Slide

  55. 55/67
    CloudWatch
    Simple Email Service
    Simple Notification Service
    Simple Storage Service
    Lambda
    Step Functions Lambda
    Lambda

    View Slide

  56. 56/67
    Credit : https://www.infoq.com/news/2020/07/future-serverless-architecture/

    View Slide

  57. 57/67
    經驗與分享

    View Slide

  58. 58/67
    Credit : https://mnapoli.fr/serverless-php-performances/

    View Slide

  59. 59/67
    Credit : Oracle
    Performance Triangle

    View Slide

  60. 60/67
    Lower latency ?
    嘗試移除沒利用到的 PHP Extensions 。

    View Slide

  61. 61/67
    Credit : Anticorrupting the Enterprise - Serverlessconf NYC 2017 (2019-01-06).pdf

    View Slide

  62. 62/67
    Credit : Anticorrupting the Enterprise - Serverlessconf NYC 2017 (2019-01-06).pdf
    需視你的情況而定

    View Slide

  63. 63/67
    Credit : https://read.acloud.guru/acg-faas-and-furious-b9574b6675c5

    View Slide

  64. 64/67
    Credit : https://www.earlytorise.com/3-proven-tools-to-change-your-mindset/

    View Slide

  65. 65/67
    Credit : http://90sheji.com/png/wanshouji.html
    Lower Cost
    Granular scaling
    LessOps
    Observability

    View Slide

  66. 66/67
    Credit : http://90sheji.com/png/wanshouji.html
    Pay for what I use (pay-as-you-go)
    Granular scaling
    Personalization (vs. SaaS)

    View Slide

  67. 67/67
    [email protected]
    https://www.facebook.com/yftzeng.tw
    https://twitter.com/yftzeng
    曾義峰 (Ant)

    View Slide