トップ «前の日記(2022-06-23) 最新 次の日記(2022-06-28)» 編集

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

ToDo:


2022-06-27

_ モノリシック vs マイクロサービス

定期的に「モノリシックなものをマイクロサービス化したらとんでもないことになった」という話を聞くように思う(つまりちょっと前も聞いた)。僕がよく聞くパターンは、モノリシックでわけわからんくなったものをマイクロサービス化したら、わけわからん RPC が飛びまくる、よりわけわからん、非効率なものになった、というもの

たぶんだけど、あまり理念とかを考えずに、マイクロサービス化することが目的化するとそうなるのかなーと。つまり、今あるモジュールの境界を是として、現在の境界で分割してしまう、っていう。これまぁ、元のコードを書いたのが自分じゃないと、モジュール境界のひきなおしとかって難しくて、しょうがない面もあると、「あんま理念を考えずマイクロサービス化しちゃった」人たちを弁護したい側面もある

つまりなんというか、本当に必要なのは、キラキラした「マイクロサービス化」ではなくて、泥くさいけど「とりあえずモノリシックなままでテストを可能にして、機能を破壊せずに、疎結合になるようにモジュール境界をひきなおす」ってことであるってケースが多そう。これが適切にできてしまうと、マイクロサービス化でも、別言語から使う API の提供でも、そういうのが単純作業に近くなってることが多いように思う

最初からマイクロサービスな開発をするってのは、手間がかかるってのはもちろんあるんだろうけど、ある程度疎結合なデザインを強制する、ギブス的な役割を果たす面がある気がしている。ただまあ本当は、そのためにマイクロサービス開発する必要は無くて、心がまえの問題で、モノリシックだろうが、「今は切れてないけど、やろうと思えば API 化もできますよ」みたいな気持ちで書くのがいいんだろうと思う。個人的には、 C++ でヘッダを小さくするとかは、そういうデザインを強制してくれて良いように思う。なんかヘッダに関数がいくつもある大きいクラスがあって、その関数をあれこれ呼んでいく、てのはつらいめ

最近 ONNX runtime の quantizer を読んでいると、これが極めて密結合でかなりひどい。 ONNX runtime の他の部分の印象は良かっただけに、ガッカリ感が強い。なんかまぁ MS ですらこんなコード書いちゃうんなら、なかなか「疎結合だいじ」てのは、意外と達成しにくいゴールなんだろうな、とか

(17:51)

お名前:
E-mail:
コメント:
人生、宇宙、すべての答え

2022年
6月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
1.shinh(2022-07-05 09:29) 2.soda(2022-07-04 15:20) 3.shinh(2022-07-04 10:42)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h