These servers provide the main functionality for CloudRepo. They provide the Maven and Pypi interfaces that our customers interact with.


  • Clojure simplifies and reduces the coding efforts involved in creating CloudRepo. The fact that it runs in the JVM gives us access to all the libraries that we could ever need. Our code base is much smaller and easier to reason about than it would have been had we gone with pure Java.

    64BitChris 64BitChris

  • We store customer metadata in DynamoDB. We decided to use Amazon DynamoDB because it was a fully managed, highly available solution. We didn't want to operate our own SQL server and we wanted to ensure that we built CloudRepo on high availability components so that we could pass that benefit back to our customers.

    64BitChris 64BitChris

  • We store the software components that CloudRepo stores for its customers here for the following reasons:

    • Data is Encrypted at Rest
    • Data is stored across multiple physical locations
    • Pricing is competitive
    • Reliability is industry leading and our customers need to be able to access their data at all times list text here
    64BitChris 64BitChris

  • We use the container service so that we can deploy our application services with Dockerfiles, so that we can test locally and deploy to AWS simply.

    Additionally, the ability to scale containers and have them automatically restart in case of failure is very helpful to our operations.

    64BitChris 64BitChris

  • EC2 runs our application servers - the servers that do all the heavy lifting for CloudRepo.

    64BitChris 64BitChris

  • If you have a single server, checking log files is as easy as SSHing to it and viewing logs. When you move to the container world, with many servers, you need a place to aggregate and search through all of your logs. CloudWatch provides us with this and it was trivial to setup.

    64BitChris 64BitChris

  • Manually clicking around the AWS UI or scripting AWS CLI calls can be both a slow and brittle process.

    We needed to be able to reconstruct CloudRepo's infrastructure in case of disaster or moving to another AWS Region.

    Setting up our infrastructure with CloudFormation allows us to update it easily as well as duplicate or recreate things when the need arises.

    64BitChris 64BitChris


Verified by
Stack Match

Favorite
Views
18
Favorite
Views
18