久しぶりの「情シス心得」になりますね。
最近、感じたことを言語化しておきます!
テーマは「できるだけ処理を速く終わらせる」というザックリしたものになります。
だいぶ抽象的ですが、更新処理などのバッチ・プログラムやWebアプリケーションでの動作などをイメージしていただければいいでしょう。
速く終わるということが、今の時代の「価値」基準になっています。
速く終わらせることは、もうメリットしか無いので、ここにこだわることが価値向上につながります。
当たり前の話ばかりですが、以下では、できるだけ処理を速く終わらせるメリットについてまとめていきます。
スリー・チョイスです。
1. 障害に巻き込まれる確率が減る
まず、処理の時間を短くさせることで、障害に遭遇する確率を減らすことができます。
「この処理は夜間に実行するものだから、時間がかかってもいいや!」と言ってしまう場面もあるのかもしれませんが、技術的に時間短縮を実現できるのであれば、1分でも2分でも処理を速く終わらせるべきです。
障害は、いつ何時、やってくるかわかりません。
大事な処理ほど、さっさと終わらせてしまいましょう!!
物理的な処理量の問題でそういうわけにはいかないケースもあると思いますが・・・。
2. リソースを無駄遣いせずに済む
次にリソースを節約できるという効果があります(またも当たり前の話)。
リソースの性能を上げれば処理が速く終わり、下げれば処理に時間がかかるという、まさにトレードオフの関係が成立しているわけですが、処理を速く終わらせることで、リソースを他の処理に使うことができます。
Webサービスであれば、1トランザクションの処理時間を1ミリ秒でも速くさばかせることが、全体のスループット向上につながるのは、間違いありません!
3. 技術力が上がる
最後に、1ミリ秒でも速く処理を完遂させることに挑戦すると、結果的に技術力が必要になります。
その処理でかかわる全要素の原理・原則を知っておく必要があるし、それぞれの機能の代替案も持っていることが必要。
さらに、気軽にB処理をB1からB2へ変更することで、前後のA処理やC処理へ影響を与えてしまうかもしれません(それを「密結合」と言いますね)。
たった1つの処理であっても、全体を捉えていなければ、致命的なバグを引き起こす可能性もあります。
速度を改善するためには、やはり「技術力」が必要になってきます。
つまり、速度にこだわることとは、自分のレベルアップにつながるわけですね。
まとめ
今回は、「速度」にこだわることをテーマに書いてみました。
コンピュータ上の処理にフォーカスしたわけですが、実生活においても、スピードを上げて効率的に行動することは、とても大切ですよね。
人間の場合、マシンと違う点は、しっかり休ませないと稼働時に本領を発揮できないことです。
毎日の睡眠をしっかり取り、動いているときは「速度」を意識して小さな改善を繰り返していく。
自分というゴムを張りっぱなしでは、いつか切れてしまうので、適度にゴムを緩めながら、人生の質を高めていきたいものですね!