Software Repository
Scroll right for more info

Title
Description
Language
Created at
Forks
Open Issues
Size (kb)
Stars
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Page
of 1
No rows found
Loading...

TECHNOLOGY STACK

MY WEBSITE ARCHITECTURE

Front end
REACT + NEXT JS
  • Single page Web apps written in create-react-app
  • Multi-page, server rendered apps written in Next js + React
Thin Backend Servers (non CPU-bound)
NODE JS + EXPRESS
  • Express app for each service.
  • Single thread event-driven architecture, good for simple services that are mostly waiting on I/O.
Application Servers (CPU-Bound)
ASP.NET CORE
  • CPU Intensive Backend Servers
  • Used for business logic, automation, large data, web APIs
  • This is the kind of development I want to focus on
Security
JWT + DOTNET IDENTITY
  • JSON Web Tokens are created by Application Servers, backed by dotnet identity
  • Accepts both cookie and Authorization Bearer tokens
  • Service accounts are created for each service that needs to be secured
Database
MYSQL
  • Storage for JWT Identity, Hangfire, and Application Servers.
  • Single instance backed by persistent volume (would like to deploy a cluster someday).
Deployment
KUBERNETES
  • Docker containers for each microservice with kubernetes orchestration.
  • Nginx ingress controller connects our microservices together. /api/ goes to the backend server and so on..
Services
NameEndpointLanguageDescription
jwtidentitydevoncrawford.io/api/authDotnetJWT Authentication Server used to secure all other services (hangfire, mailer)
hangfiredevoncrawford.io/api/hangfireDotnetBackground processing server
mailerdevoncrawford.io/api/mailerDotnetMailing service secured by JWT
mysqlprivate. only accessible within clusterMySqlDatabase for jwtidentity, hangfire, hangfire_github, hangfire_youtube
redirdevoncrawford.io/redirNode jsRedirect amazon affiliate links based on country
frontdevoncrawford.io/Next js + ReactWhat you see