Este projeto é uma eploration da arquitetura de próxima geração baseada no núcleo do DOTNET e no JavaScript. Quando comecei isso, tudo era muito sangrando, mas mantive esses repositórios à medida que esses produtos amadureciam, e agora tudo está lançado e pronto para a produção!
Aqui está o post introdutório do blog. Há postagens de acompanhamento na minha implementação dos certificados Let's Encrypt, The React, Redux e Frontend baseado em TypeScript, e o back-end baseado em ator de Orleans. Também adicionei o Dockerfiles e implementei esta solução para um cluster Kubernetes. Os arquivos de configuração para isso (menos segredos) estão na pasta de implantação.
Este projeto demonstra muitas tecnologias no contexto:
%AppData%RoamingMicrosoftUserSecretsrrod-secretssecrets.json , no OSX, está em ~/.microsoft/usersecrets/rrod-secrets/secrets.json ). Uma conta de armazenamento deve ser criada primeiro no Microsoft Azure. No Windows, você pode instalar alternativamente o emulador de armazenamento do Azure e colocar "USEDEVENENCIAMENTESTORAGES = TRUE" para as seqüências de seqüências de conexão de armazenamento. A sequência de conexão SMTP não é realmente necessária. É possível configurar Orleans com outros tipos de cluster que não usam armazenamento do Azure (como o cluster de Kubernetes nativos) com algumas alterações de código. A classe Base Reduxgrain (usada para armazenar usuários e valores de contador) é codificada contra o armazenamento do Azure e realmente precisa do ReduxConnectionString. O arquivo de segredos mínimos contém: {
"ConnectionStrings": {
"DataConnectionString": "DefaultEndpointsProtocol=https;AccountName=[AZURE STORAGE ACCOUNT];AccountKey=[STORAGE KEY];EndpointSuffix=core.windows.net",
"ReduxConnectionString": "DefaultEndpointsProtocol=https;AccountName=[AZURE STORAGE ACCOUNT];AccountKey=[STORAGE KEY];EndpointSuffix=core.windows.net",
"SmtpConnectionString": "Host=[SMTP HOST];UserName=[SMTP USERNAME];Password=[SMTP PASSWORD]"
},
"AcmeSettings": {
"EmailAddress": "[YOUR EMAIL]",
"PfxPassword": "[A RANDOM PASSWORD]"
}
}
dotnet runnpm install (ou yarn ) e depois dotnet runUsando o código VS ou o Visual Studio, você também pode fazer isso de dentro do IDE.
Este código deve ser considerado experimental. Ele funciona, no entanto, o projeto pode ter arestas e não foi testado minuciosamente. Congratulo -me com o feedback!
- Maarten