2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

Boxzilla開発者「自社WebサービスをPHPからGo言語に移行したら実行速度70倍、コード量も1/5になってワロタ」Goってそんな凄いの? [936827494]

1 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 7f3a-knmq):2017/04/19(水) 12:43:29.84 ID:A7nnFI9d0?2BP(1000)

Moving from PHP (Laravel) to Go
Published on Apr 17, 2017

Earlier this year, I made an arguably bad business decision. I decided to rewrite the Laravel application powering Boxzilla in Go.

No regrets though.

Just a few weeks later I was deploying the Go application. Building it was the most fun I had in months,
I learned a ton and the end result is a huge improvement over the old application. Better performance, easier deployments and higher test coverage.

The application is a fairly straightforward database driven API & account area where users can log-in to download the product, view their invoices or update their payment method.

Stripe and Braintree are used to accept subscription payments. Invoices are handled using MoneyBird and some transactional emails are sent using Mailgun.

While Laravel worked well enough for this, some things always felt overcomplicated to me. And what’s with releasing a new “major” version every few months?
I’d be fine if the newer versions contained significant improvements, but a lot of times it just felt like minor naming & directory structure changes to me.

続きはソースで見てね
https://dannyvankooten.com/laravel-to-golang/

14 :番組の途中ですがアフィサイトへの\(^o^)/です (オイコラミネオ MM4f-m8BH):2017/04/19(水) 12:51:20.99 ID:xG4D/Bu4M.net
>>9
これ

15 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 5f47-zmNz):2017/04/19(水) 12:52:23.26 ID:fMXNf9jS0.net
PHPの寿命が長すぎる

16 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5f40-I3pH):2017/04/19(水) 12:53:26.80 ID:4KFZ3K530.net
googleのくせに検索しにくい名称の言語作りやがって

17 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5fd4-HE/W):2017/04/19(水) 12:53:47.12 ID:RWsP2Rl90.net
そもそもPHPを選ぶのが駄目だろ

18 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5f25-HE/W):2017/04/19(水) 12:54:13.76 ID:/0TCdN1w0.net
G言語?

19 :番組の途中ですがアフィサイトへの\(^o^)/です (スップ Sd7f-sbei):2017/04/19(水) 12:54:17.71 ID:3ku+ZNIUd.net
ルビーもすぐゴーに置き換わるよ
オワコン

20 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7fef-sNNf):2017/04/19(水) 12:54:18.32 ID:dnvgDj+50.net
PHPはフレームワーク使わずに全部こなせることが現実的にマイナス面になってしまうことと
プラグイン的な拡張の方法が「そもそも含めて本体ビルド」や「後から足すいくつかの手段」でカオスになるのが良くない

21 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7fef-sNNf):2017/04/19(水) 12:54:32.40 ID:dnvgDj+50.net
>>16
golang

22 :番組の途中ですがアフィサイトへの\(^o^)/です (ブーイモ MMab-fZp8):2017/04/19(水) 12:54:50.69 ID:DRf3eQCLM.net
php7.1 & OPcache & Phalconで並べる

と思ってた

23 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイWW 7f0b-nD+p):2017/04/19(水) 12:55:26.95 ID:QjN0ophc0.net
>>5
他の言語で十分なところ

24 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ a7ae-kKgC):2017/04/19(水) 12:57:57.26 ID:/g5YhMcM0.net
>>6
Goは良くないのに流行る典型だろ

25 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7fef-sNNf):2017/04/19(水) 12:58:19.08 ID:dnvgDj+50.net
>>22
そんな最新環境すぐ導入できるところなら
そもそもPHP使わんからね

26 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 67d0-HE/W):2017/04/19(水) 13:00:21.98 ID:ayUKuvzc0.net
GoでのDBへの接続は整ってるの?

27 :番組の途中ですがアフィサイトへの\(^o^)/です (スプッッ Sdff-pNAQ):2017/04/19(水) 13:00:31.94 ID:xy8QOBZgd.net
GO is GOD

28 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ c765-HE/W):2017/04/19(水) 13:01:48.50 ID:7FH1As6A0.net
LAMGになるのか

29 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 2735-qdxO):2017/04/19(水) 13:06:40.63 ID:7K1qyNtX0.net
Boxzillaって何んなんだよ

30 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5ff6-PZs8):2017/04/19(水) 13:06:41.19 ID:DkyJ+Yaf0.net
複数戻り値とスレッド間通信とか面白そうな感じではあるけど今作りたいモノが特にない

31 :番組の途中ですがアフィサイトへの\(^o^)/です (アメ MMab-0iAm):2017/04/19(水) 13:07:35.05 ID:vpHImowHM.net
言語は優秀だけじゃ普及に繋がらないのがなぁ

32 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5fc4-RZRQ):2017/04/19(水) 13:09:38.08 ID:fHTobhGv0.net
PHPがうんこなだけ

33 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 07f7-EaKP):2017/04/19(水) 13:10:56.57 ID:9+a2jeQn0.net
goがすごいじゃなくてまずphpを疑えよ…

34 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5f0f-eWMO):2017/04/19(水) 13:16:21.63 ID:v7WoO9+F0.net
PHPがゴミなんだぞ

35 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ c7ef-HE/W):2017/04/19(水) 13:17:53.86 ID:9tSHg8nM0.net
大したサービスじゃなければPHPで十分だよ
パフォーマンスの問題なんてGoogle並のサービスを作れたら考えるぐらいで調度いい

36 :番組の途中ですがアフィサイトへの\(^o^)/です (スップ Sd7f-sLMZ):2017/04/19(水) 13:18:00.63 ID:G6EGqsIsd.net
GO is GOD

37 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイWW 5f48-3QLf):2017/04/19(水) 13:18:29.54 ID:Y4SOS/rj0.net
というかphpがクソなだけでは?

38 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 077d-q/Xi):2017/04/19(水) 13:20:28.55 ID:IeBaIbYO0.net
バレちゃった

39 :番組の途中ですがアフィサイトへの\(^o^)/です (スプッッ Sdff-8aNn):2017/04/19(水) 13:22:57.02 ID:hsNH7miSd.net
>>5
基本的に他の汎用言語で事足りるしなぁ
習得と移行にかかる時間でどれだけ利益を失うか考えたらまだ無駄でしかない
Go言語が他と互換性持って参考資料も増えてきたら移行どきかもしれん

40 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 2765-HE/W):2017/04/19(水) 13:28:09.58 ID:lLujqquL0.net
でも月額1000円ぐらいのサーバーだとPHPぐらいしか選択肢なくね?

41 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 7f3a-pVHc):2017/04/19(水) 13:29:50.98 ID:A7nnFI9d0.net
>>40
root権限つきのVPSなら大体なんでもいける

42 :番組の途中ですがアフィサイトへの\(^o^)/です (ワントンキン MM3f-dnwP):2017/04/19(水) 13:29:55.63 ID:zv2JBAxiM.net
ネットワークプログラミングするにはいいと思う
あと、マルチプラットフォームなシステムツールとか
ウェブのサーバーサイドプログラミングするには、他の言語と比べて特にメリットはない
ま、PHPを置き換えるようなもんじゃないね
RustとかPythonあたりが競合だろうね

43 :番組の途中ですがアフィサイトへの\(^o^)/です (アウアウカー Sa9b-p5dV):2017/04/19(水) 14:02:38.67 ID:VPQH3VfDa.net
ごー

44 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7f72-zfAr):2017/04/19(水) 21:19:23.26 ID:Euy3TuNr0.net
Laravelに速度求めて採用するデベロッパはいないだろ

45 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5f18-V7Gz):2017/04/19(水) 21:21:52.82 ID:n601zGF30.net
Rustだろ

46 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7f02-baq7):2017/04/19(水) 21:23:14.42 ID:sLTJ6OzK0.net
GOは私にとってアポロンでした

47 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7f72-zfAr):2017/04/19(水) 21:27:32.62 ID:Euy3TuNr0.net
その辺にあるようなシステムならPHPで充分だろ
エンジニアの採用しやすさ、トラブった時の情報の多さ、便利なライブラリの有無
最初からマイナー言語使うのは無いわ

ユーザ増えて速度が必要になったら、設計含め作り直しで

48 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイWW fffc-Sg0A):2017/04/19(水) 22:05:18.31 ID:wKJNX0v90.net
まともなPHPのコード見たことないんだけど存在するの?

49 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 874c-YcsV):2017/04/19(水) 23:20:44.26 ID:bQwsD14w0.net
goは基本非同期ioだから早くなって当然

asyncioを使ったpythonのwebアプリも負けず劣らずらしい

50 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ c7ef-jjrL):2017/04/19(水) 23:29:58.80 ID:OG8tFGbk0.net
Goってもう実用レベルなん?あんまコードころがってないけど…

51 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイWW 7fab-KhKV):2017/04/19(水) 23:33:12.09 ID:x8o3TB320.net
元がPHPだからそりゃそうなるんでは

52 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7fef-sNNf):2017/04/19(水) 23:36:00.37 ID:dnvgDj+50.net
>>50
goは実用レベルだけど必要なところだけ使う場合が多いから情報は少なめ

53 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 27ac-3MbB):2017/04/19(水) 23:36:38.12 ID:p4HzYiu30.net
すごいな
秒速で何億も稼ぎそう

54 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 874c-YcsV):2017/04/19(水) 23:39:46.48 ID:bQwsD14w0.net
>>50
Ethereumの本家実装、wercker、Googleの内部アプリその他諸々

55 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイWW 5f7f-bveV):2017/04/19(水) 23:39:59.25 ID:ga2+IjhU0.net
パパパっとやって終わり!

56 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7fef-sNNf):2017/04/19(水) 23:41:01.21 ID:dnvgDj+50.net
Goは構文がやや変態だけど覚えることは少なめだから
システムのバックエンドで省リソースに並列処理したい、とか取り敢えず使ってみればいいよ

57 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 5f34-I3pH):2017/04/19(水) 23:44:20.83 ID:F6UAtq2c0.net
>>25
ワシ22だけど最新云々より人集めがネックなんだよ
そりゃGoとか使ったほうが速いしワシはC#信者なんでC#でやりたいんだが単価が合わないのよね

58 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7fef-sNNf):2017/04/19(水) 23:46:56.50 ID:dnvgDj+50.net
>>57
SIはともかくWeb系界隈ではC#はレアだな
bitFlyerとか有名どころもあるにはあるけど

59 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 6aed-sy3Q):2017/04/20(木) 00:05:06.51 ID:uoogY0W10.net
そういわれるとYes!プリキュア5GoGo!も早そうに感じる

60 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ aa34-9aAf):2017/04/20(木) 00:06:36.15 ID:JRNTNd0M0.net
>>58
ASP.net MVCとかWEB屋は誰も知らんしな……
.net coreも時期尚早だしアレ

61 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイWW 6659-f7dw):2017/04/20(木) 00:52:11.19 ID:31hta3Ev0.net
エラーを戻り値で返す仕様に慣れない

62 :番組の途中ですがアフィサイトへの\(^o^)/です (アウアウカー Sa55-XsL7):2017/04/20(木) 02:15:11.63 ID:6+T0MWn5a.net
無駄にコード書かされる筆頭格のJavaが未だに天下取ってるんだからそんなもん
ちょっと前はPythonPython言われてたのにちっとも流行ってねえし

63 :番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ ea48-JBgY):2017/04/20(木) 02:18:46.45 ID:kAf09HF90.net
phpなんて使ってんじゃねーよ、ハゲ

総レス数 63
14 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★