Saturday, March 30, 2019
Software Design Principles
- Be clear for what you are designing -
- What is the production traffic 1x
- Who is going to access
- How personas are going access
- How can we troubleshoot
- Are you able to trace everything that happened
- Make sure to test your production systems at different scales 1x to 10x
- Test the fail over scenarios
- Test the failure scenarios - when dependency system / service not available etc.
- Have alerts in place for failures and anomaly detection
- Pick the right technology for use case
Wednesday, March 20, 2019
Tricks: AWS SNS retry
If you have a service with async
processing and you would like to setup retries - instead of building your own
solution please take a look at https://docs.aws.amazon.com/sns/latest/dg/DeliveryPolicies.html
You can control the frequency of the retries in the backoff
phase with three parameters.
·
Minimum delay—The
minimum delay defines the delay associated with the first retry attempt in the
backoff phase.
·
Maximum delay—The
maximum delay defines the delay associated with the final retry attempt in the
backoff phase.
·
Retry backoff function—The retry
backoff function defines the algorithm that Amazon SNS uses to calculate the
delays associated with all of the retry attempts between the first and last
retries in the backoff phase.
You can choose from four retry backoff functions.
·
Linear
·
Arithmetic
·
Geometric
·
Exponential
Good luck
Monday, March 18, 2019
Tricks: AWS Cloudwatch log subscription
Publish the logs to your
choice of destination and avoid dependency of publishing logic in your code
https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SubscriptionFilters.html
We used lambda
subscription model and streamed the logs to storage of our choices like
ElasticSearch, Splunk etc. without impacting the running the application code.
Subscribe to:
Posts (Atom)
