思元的開發筆記

關於 web service, unity, blogger 等軟體工程筆記

AWS Beanstalk: Configuring the proxy server - Keepalive connection with backend app

無意間在檢查應用服務時,所發現的 nginx 設定問題,每次與 nginx 連線要求時,nginx 都會另外開一個連線來處理與後端伺服器 (backend app) 的資料交換。目前專案服務採用 source bundle 方式在 Beanstalk 平台部屬 (dep...

AWS Beanstalk HTTP 502: Upstream sent too big header while reading response header from upstream

最近檢查即將上線的服務,發現主要服務經常發生 HTTP 500 的錯誤,從 logs 中確認是其中某個 REST 微服務回應 HTTP 502 Bad Gateway 所導致的,因而從中翻翻閱該微服務的全部 logs,並找到出錯原因以及解決方法。

Unity C# Interface, Inheritance and Component:以狀態血量設計為例

最近同事分享之前受訓所學的 Design patterns,加上看到社群有人詢問血量設計問題,因此整理關於在 Unity 中,設計血量系統的可能實作方法。 不得不說,剛從學校畢業開始接觸 Unity 時,最優先採用的是類別繼承 (class inheritance),...

Unity C# Inheritance vs Composition 繼承與組件式設計之戰鬥系統經驗談

基於一些機緣而回憶之前身為初心者所掉過的坑,到底應該是使用繼承 (Inheritance) 抑或是組合 (Composition) 方式來設計遊戲中的戰鬥系統,哪一種比較適合 持續變動的遊戲開發 ?

多人網路連線遊戲程式開發之讀書筆記:同步遊戲資料,資料序列化與物件複製,處理網路延遲與伺服器安全性

Multi-Player Game Programming ,這是一本介紹如何建置多人網路遊戲程式的書,提到許多關於網路遊戲傳輸的重要概念,例如如何同步遊戲世界資料,如何讓遊戲玩起順順不卡頓 (lag)等等,以及多人遊戲會遇到的困難與挑戰,有志朝網路遊戲程式設計可以閱讀...

LeetCode #42 Trapping Rain Water

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to ...

LeetCode #37 Sudoku Solver

Write a program to solve a Sudoku puzzle by filling the empty cells. Empty cells are indicated by the character ‘.’. You may assume ...

LeetCode #32 Longest Valid Parentheses

Given a string containing just the characters '(' and ')' , find the length of the longest valid (well-formed) pare...

LeetCode #25 Reverse Nodes in k-Group

Given a linked list, reverse the nodes of a linked list k at a time and return its modified list.

LeetCode #23 Merge k Sorted Lists

Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. 在這次問題中,嘗試使用 Go 來實作三種不同的解題方式,總結其複雜...