É fundamental entender o que realmente implica sen servidor porque non significa que non haxa un servidor.
En realidade, como programador, non che importa un rasgo sobre o servidor en segundo plano. Debido a que o código que desenvolve un programador debe executarse nalgún lugar, sempre hai un servidor operando en segundo plano.
A distinción é que se es un programador, non tes que preocuparte por establecer, manter ou implantar un servidor nin escribir código relacionado co servidor.
Xa non es responsable de ningunha desas cousas, polo que non debes preocuparte por elas.
Debes poñer a túa atención no desenvolvemento do código como desenvolvedor e non na infraestrutura.
Frameworks sen servidor
O método para desenvolver e despregar aplicacións baseadas na nube é sen servidor. A infraestrutura na nube é mantida polo provedor de nube, non polos desenvolvedores.
Simplemente están obrigados a pagar a cantidade en función do uso.
O marco sen servidor é unha plataforma que che permite crear aplicacións de servizo (aplicacións que se escalan enormemente por si só mentres só che custan uns centavos) e agora inclúe ferramentas de vixilancia, probas e seguridade para axudarche a xestionar tales aplicacións.
Examinemos agora os distintos tipos de cadros sen servidor con máis detalle.
1. Sen servidor
Podes estar pensando que alguén que tivo a sorte de asegurar o nome de dominio Serverless.com só está a sacar proveito da súa boa fortuna, pero teño que asegurarvos que non é así.
O marco sen servidor máis coñecido é o marco sen servidor, que ten máis de 43,000 estrelas activadas GitHub.
O marco sen servidor máis popular é Serverless, que foi creado orixinalmente para axudar aos desenvolvedores a crear aplicacións para AWS Lambda.
Con Lambda e outras plataformas FaaS, permítelle deseñar, implantar e xestionar aplicacións sen servidor rapidamente. Ademais de Kubeless e Apache OpenWhisk, é compatible con Azure Functions, Google Cloud Functions e moito máis.
A infraestrutura necesaria para as funcións e eventos dados é creada automaticamente polo Serverless Framework.
En consecuencia, pode crear programas complexos ou microservizos dirixidos por eventos que se escalarán segundo a demanda.
Ademais, como é neutral para o provedor, podes agrupar e implementar aplicacións en varias nubes, incluíndo Google Cloud, Azure, AWS, etc.
Ademais, pode ampliar os seus casos de uso modificando a funcionalidade do cadro mediante complementos.
Para desenvolver casos de uso que actualmente non están cubertos, Serverless ofrece un amplo ecosistema de complementos.
2. AWS Charlie
¿Buscas un marco Python para crear aplicacións sen servidor?
AWS Chalice é un Python plataforma de desenvolvemento de aplicacións sen servidor ese é un proxecto para os entusiastas de Python.
Ofrece un microframe que permite o desenvolvemento e a implantación rápidas de aplicacións utilizando AWS Lambda e API Gateway.
Chalice configura automaticamente os recursos axeitados, o que lle permite executar e implantar rapidamente microservizos sen servidor e aplicacións web.
Adicionalmente, APOS DE DESCANSO pódese implementar rapidamente en AWS mediante Chalice CLI. Ademais, é sinxelo crear canalizacións CI/CD xa que Chalice crea automaticamente canalizacións de implantación mediante AWS CodeBuild e CodePipeline.
Por exemplo, CyberArk creou microservizos sen servidor usando Chalice e unha infraestrutura maior con AWS CDK. Chalice simplificou a transición dos desenvolvedores dunha arquitectura local a unha en nube.
A integración de Amazon API Gateway, Amazon S3, Amazon SNS, Amazon SQS e outros servizos de AWS mellora a API.
Chalice está centrado en Python, polo que os casos de uso poderían restrinxirse aos servizos creados en Python.
3. Claudia.js
Serve máis como ferramenta de implantación que como marco.
É unha ferramenta de código aberto que permite aos programadores implementar de xeito rápido e sinxelo aplicacións de Node en AWS Lambda e API Gateway (sen coñecer os propios servidores).
Configura o ambiente JavaScript automaticamente e automatiza as tarefas de configuración e implementación.
Ademais, pódese usar sen preocuparse polo hospedaxe, a escalabilidade, etc. como código do lado do cliente ou funcións sen servidor.
Como resultado, os desenvolvedores poden crear e implementar aplicacións dirixidas a eventos e API web de escala automática de forma rápida e sen preocupacións.
As súas bibliotecas de extensións permiten aos usuarios crear facilmente chatbots e puntos finais da API web. É un método estupendo para xestionar moitas versións do teu sitio ao mesmo tempo sen comprometer a comodidade e o pracer que esperas de Claudia.
Inclúe unha sinxela ferramenta de xestión de versións, que lle permite traballar en numerosas versións ao mesmo tempo sen preocuparse polos conflitos ou perderse nun mar de código.
4. Zappa
Zappa, outro framework de Python, é sinxelo de usar e rico en funcións. Permítelle deseñar e implementar aplicacións baseadas en Python sen servidor e impulsadas por eventos en AWS Lambda dunha forma perfecta.
Zappa tamén é un marco popular para desenvolver aplicacións e proxectos baseados en WSGI.
É compatible con case calquera marco compatible con WSGI, incluíndo Pyramid, Bottle e incluso Django.
Ademais, cando se usa xunto con Flask, Zappa é ideal para aloxamento sen servidor ou complicado aplicacións web, procesamento de imaxes, procesamento de texto e procesamento de números.
Zappa configura os parámetros de implantación automaticamente. Implementa a aplicación nunha fase de produción mediante unha única liña de comandos cando a configuración se especificase adecuadamente.
Se queres un modelo de API Gateway CloudFormation, utiliza o comando do modelo.
Use certificados SSL, certificados de AWS Certificate Manager e certificados Let's Encrypt para implementar Zappa en subdominios e nomes de dominio personalizados.
Activa os puntos finais seguros da API Gateway, incluíndo a clave API, a política de IAM, os autorizadores de Lambda, os autorizadores de grupos de usuarios de Cognito e a política de recursos.
Ademais, usando un ficheiro S3, pode cambiar as variables de ambiente para o ambiente local, o ambiente AWS remoto e o ambiente distante.
5. Arquitecto
Architect é un marco sólido para crear aplicacións nativas da nube rápidas, actualizadas e escalables.
É un marco complexo e completo. Permite aos programadores crear rapidamente arquitectura sen servidor usando un código mínimo, sen formalidades e unha configuración sucinta.
Así, poden concentrarse unicamente na lóxica empresarial. Ademais, só pagas polos servizos que se están utilizando, solicitando ou reducindo a cero.
Architect está feito para crear aplicacións web con soporte de bases de datos dinámicas. Nun sentido técnico, é un envoltorio avanzado para AWS SAM.
Así, calquera cousa que se poida facer con SAM tamén se pode facer con Architect.
Non obstante, o marco destaca na creación de aplicacións web. Para simplificar a implementación, o arquitecto aproveita tecnoloxías moi populares como Google Cloud Build e condicións G Init.
Sen traballo humano, o arquitecto emprega un ficheiro app.arc para crear o código configurado e proporcionado automaticamente de acordo coa configuración de autorización do usuario.
Simplemente executando os seus guións, axudas Desenvolvedores de Javascript por escrito, depurando e probando a súa lóxica empresarial.
6. Sigma
Un novo IDE baseado na nube chamado Sigma baséase no concepto de desenvolvemento sen servidor.
Este é un IDE con todas as funcións que che permite crear código e publicalo como unha aplicación en directo en tempo real. Non é simplemente un simple editor de texto con algunhas funcións elegantes.
O Sigma IDE pode comunicarse de ida e volta coa plataforma sen servidor (FaaS) que elixa, pero só se hai un ficheiro de configuración.
Como consecuencia, pode evitar realizar traballos tediosos durante incontables horas. Sigma non ten servidores por natureza, en contraste con outros programas que intentan lograr un obxectivo comparable.
Con algunhas excepcións, o IDE pódese usar sen un servizo de back-end executándose unicamente no navegador. En particular, o back-end é necesario para recoller datos analíticos e autenticar usuarios.
As aplicacións desenvólvense de forma incremental e conéctanse con moitos outros servizos de AWS, incluíndo DynamoDB, AWS Lambda e AWS API.
NodeJS é compatible co Sigma IDE xa que permite aplicacións en tempo real. É importante estar atento a este e probalo.
7. Chorros
Aprecias a Ruby?
Entón podes apreciar Jets, un Ruby Framework sen servidor para deseñar e implantar microservizos. Podes crear estruturas de API e entregalas a Lambda co conxunto de ferramentas completo do framework.
Os chorros tamén se poden usar para crear funcións autónomas que conectan varios servizos e recursos de AWS.
O teu código actual transfórmase en funcións para Lambda e outros servizos de AWS a través do marco Jets.
Isto permítelle dedicar máis tempo a crear código funcional saltando procesos como a implantación e o aprovisionamento.
O código Ruby pode ser escrito polos desenvolvedores e convertido en funcións Lambda e recursos de Amazon API Gateway por Jets.
Como resultado, Jets permítelle crear unha variedade de patróns de deseño, como aplicacións de API en liña, programas dirixidos a eventos, arquitectura IoT e moito máis.
Para aforrar tempo, está deseñado para permitir que o código se converta facilmente en funcións lambda e recursos de AWS.
8. Modelo de aplicación sen servidor AWS
En palabras sinxelas, AWS SAM facilita a creación de aplicacións sen servidor que se integran con varios servizos de AWS.
Facilita o deseño, a implantación e a depuración de aplicacións sen servidor no contorno de AWS porque é o marco oficial de implantación sen servidor de AWS.
Coa sintaxe abreviada de SAM, os desenvolvedores poden describir recursos nunha fracción das liñas necesarias con AWS CloudFormation. Con AWS SAM, pode crear unha variedade de aplicacións, incluíndo fortes actividades asíncronas impulsadas por eventos.
Ademais, habilita funcións Lambda baseadas en imaxes baseadas en Docker, o que simplifica significativamente o desenvolvemento sen servidor.
Usando AWS Lambda, API Gateway, táboas DynamoDB e servizos S3 como fundamento, o marco utilízase con frecuencia para automatizar a implantación de aplicacións sen servidor.
As aplicacións especificadas polos modelos SAM ou AWS CDK pódense crear, probar e depurarse localmente usando o ambiente de execución tipo Lambda da CLI de SAM.
Os desenvolvedores poden probar os cambios de código na nube con SAM Accelerate para o desenvolvemento baseado na nube, eliminando a necesidade de emulación local para aplicacións sen servidor. se conecta a diversos produtos AWS sen servidor.
Inclúe unha variedade de comandos prácticos da CLI de SAM (como sam init, sam logs e sam package, entre os populares).
9. Flogo
Flogo é ideal para o desenvolvemento de aplicacións sen servidor baseadas en Docker.
É un ecosistema de código aberto con funcións orientadas a eventos que facilita a creación de aplicacións sen servidor contemporáneas e conscientes dos recursos.
Ofrece un marco personalizado para deseñar, implantar e xestionar rapidamente aplicacións en AWS Lambda usando só imaxes de Docker e está escrito na linguaxe de programación Golang.
O Proxecto Flogo foi utilizado por varias empresas, incluíndo Thingstream, Liturgical Publishing, Biogen, Cosentino e Campari Group, para apoiar os seus casos de uso.
CargoSmart, por exemplo, pode empregar a intelixencia artificial para analizar datos de IoT para mellorar as experiencias dos usuarios mediante un mellor xuízo.
Utilizou a sinxeleza de Flogo na integración aprendizaxe de máquina modelos (ML).
Ofrece solucións para varias empresas que precisan reaccionar rapidamente e desenvolver aplicacións rapidamente para aforrar tempo.
Flogo admite a linguaxe de programación Golang e a IU web visual e pódense usar para deseñar e crear as túas aplicacións.
10. AWS Amplify
Utiliza o marco AWS Amplify para crear facilmente aplicacións escalables sen servidor para plataformas web e móbiles e gozar dunha flexibilidade ilimitada.
Usando procesos intelixentes, pode configurar os seus backends sen servidor con datos, almacenamento, autenticación e moito máis.
Con menos liñas de código, conecte aplicacións web e móbiles a servizos de AWS novos ou existentes.
As aplicacións web dunha soa páxina, as aplicacións renderizadas no servidor e as páxinas web de estado pódense aloxar e implementar con só uns poucos clics.
Ademais, facilita a xestión dos usuarios e do contido da aplicación. Os desenvolvedores web e móbiles front-end poden construír aplicacións de pila completa en AWS máis rapidamente e modificar a aplicación cando o precises coa axuda de AWS Amplify.
Numerosos marcos web, incluíndo Reaccionar, Angular, JavaScript, Vue.js, Next.js, etc., así como plataformas móbiles, incluíndo iOS, Ionic, Flutter, Android e React Native, son compatibles con Amplify.
Conclusión
Agora cubrimos os principais marcos sen servidor que podes integrar na túa aplicación.
Esta tecnoloxía permítenos publicar aplicacións no mercado con máis rapidez e aumentar o valor optimizando a súa aplicación, ademais de aforrar cartos e recursos escalando os recursos en función da demanda de tráfico.
A nova tendencia na creación e entrega das nosas aplicacións baseadas na nube é a informática sen servidor. Nos próximos anos crearanse moitos máis marcos sen servidor novos para simplificar as solucións comerciais, reducir custos e proporcionar tecnoloxía con algúns beneficios adicionais.
Deixe unha resposta