このサービスには、サービスプロバイダーが負担しなければならない一定の管理コストが含まれます。適切に設計されたライブラリは、これらすべてのコストをユーザーに転送します。
これは、ライブラリ(使用が可能な場合)がユーザーに同じ機能を提供できる一方で、開発者のコストはサービスよりも少ないことを意味します。
通常、このような管理コストを一元化することは、サービスの利点と見なされます。
「サービスは一元的に更新できるため、更新が遅いユーザーが他のユーザーの生活を台無しにしないため、サービスは簡単に操作できます」と人々は言います。
しかし、これは、時間どおりに更新しないユーザーが他のすべてのユーザーに影響を与える可能性があることを意味します。 1人のユーザーが他のユーザーに悪影響を与えることができない場合、個々のユーザーがどれだけ迅速に更新されるかは関係ありません。彼らは自分自身を傷つけるだけです。
ユーザー間でリソースの状態を共有しないことで、一部のユーザーが他のユーザーに与える悪影響を防ぐことができます。言い換えれば、サービスを回避します。
例として一般的なシナリオを取り上げましょう。開発者はライブラリとサービスの両方を作成しますが、後でライブラリ(すでにリリースされている)に何らかのバグまたは非互換性が含まれていることを発見し、サービスを改善する前にすべての人のために更新する必要があります。これは大きな頭痛の種になります。そのため、開発者は、更新を容易にするために機能をライブラリからサービスに転送する必要があると素朴に想定できます。
ただし、サービスがまったくなく、すべての関数を含み、サービスが実行する必要があるすべてのことを実行するライブラリしかない場合、この問題はまったく発生しません。アップグレードしないユーザーは、元のバージョンのライブラリに存在する問題に悩まされ、他のすべてのユーザーは問題ありません。
この方法でサービスを回避できるとは限りません。しかし、これは考えられているよりも頻繁に可能です。考慮すべきいくつかのアイデアは次のとおりです。
- , , . , , - , , Linux Kubernetes. , .
, , . - , , . , ; , «».
, , , . , :
- ( )
- ( )
- (, , )
- , (, «» , )
- ,
, . - , . , — .
, , , . :
- , , , .
- Java , .
- Capability-safe architectures, , CHERI, , (capability).
- (Software fault isolation) « » Multics, , .
, . - — , , ( , JSON, ..).
. , ; . - , . , , , , , .
, , , . , .
このアイデアや他のアイデアを使用して、サービスの代わりにライブラリを作成できることがよくあります。
サービスに関連するメンテナンスとアップグレードのコストを排除することにより、ライブラリにはより多くの機能を含めることができ、開発者とユーザーの両方にメリットがあります。
広告
VDSinaは 、あらゆるタスクに対応するVDSのレンタル、自動インストール用のオペレーティングシステムの豊富な選択肢、独自のISOからの任意のOSのインストール 、便利 な独自のコントロールパネル、および個別に作成できる料金の毎日の支払いを提供します。タスク。