O serviço envolve custos administrativos constantes que o provedor de serviços deve arcar. Uma biblioteca projetada adequadamente transfere todos esses custos para seus usuários.
Isso significa que a biblioteca (se seu uso for possível) é capaz de fornecer ao usuário a mesma funcionalidade, ao mesmo tempo que custa ao desenvolvedor menos do que o serviço.
Normalmente, a centralização desses custos administrativos é considerada uma vantagem do serviço.
As pessoas dizem: "Os serviços são fáceis de trabalhar porque podem ser atualizados centralmente para que usuários com atualização lenta não arruinem a vida de outras pessoas."
Mas isso implica que os usuários que não atualizam a tempo podem influenciar todos os outros. Se um usuário não puder influenciar negativamente outros usuários, não nos importamos com a rapidez com que os usuários individuais são atualizados; eles apenas prejudicam a si mesmos.
Você pode evitar o impacto negativo de alguns usuários sobre outros, não compartilhando o estado dos recursos entre os usuários; em outras palavras, evitando serviços.
Vamos pegar um cenário comum como exemplo: um desenvolvedor cria uma biblioteca e um serviço, mas depois descobre que a biblioteca (já lançada) contém algum tipo de bug ou incompatibilidade e precisa ser atualizada para todos antes de melhorar o serviço. Isso se torna uma grande dor de cabeça, por causa da qual o desenvolvedor pode presumir ingenuamente que a funcionalidade precisa ser transferida da biblioteca para o serviço para facilitar as atualizações.
Mas se você não tem nenhum serviço, mas apenas uma biblioteca que contém todas as funções e faz tudo o que o serviço deve fazer, então esse problema não surgirá de forma alguma. Os usuários que não atualizarem sofrerão com os problemas existentes na versão original da biblioteca e todos os outros ficarão bem.
Nem sempre é possível evitar serviços dessa forma; mas isso é possível com mais freqüência do que se pensa. Aqui estão algumas ideias para considerar:
- , , . , , - , , Linux Kubernetes. , .
, , . - , , . , ; , «».
, , , . , :
- ( )
- ( )
- (, , )
- , (, «» , )
- ,
, . - , . , — .
, , , . :
- , , , .
- Java , .
- Capability-safe architectures, , CHERI, , (capability).
- (Software fault isolation) « » Multics, , .
, . - — , , ( , JSON, ..).
. , ; . - , . , , , , , .
, , , . , .
Usando essa e outras idéias, você pode criar uma biblioteca em vez de um serviço.
Ao eliminar os custos de manutenção e atualização associados aos serviços, as bibliotecas podem conter mais funcionalidades, o que beneficia tanto o desenvolvedor quanto o usuário.
Anúncio
A VDSina oferece VDS para alugar para qualquer tarefa, uma vasta selecção de sistemas operativos para instalação automática, é possível instalar qualquer SO a partir do seu próprio ISO , um conveniente painel de controlo proprietário e um pagamento diário de uma tarifa que pode criar individualmente para o seu tarefas.