Skip to content

Commit a278bd9

Browse files
author
abregman
committed
2 parents fafb7dd + 5520408 commit a278bd9

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ which follows the immutable infrastructure paradigm.
194194

195195
<details>
196196
<summary>What is caching? How does it works? Why is it important?</summary><br><b>
197+
Caching is fast access to frequently used resources which are computationally expensive or IO intensive and do not change often. There can be several layers of cache that can start from CPU caches to distributed cache systems. Common ones are in memory caching and distributed caching. <br/> Caches are typically data structures that contains some data, such as a hashtable or dictionary. However, any data structure can provide caching capabilities, like set, sorted set, sorted dictionary etc. While, caching is used in many applications, they can create subtle bugs if not implemented correctly or used correctly. For example,cache invalidation, expiration or updating is usually quite challenging and hard.
197198
</b></details>
198199

199200
<details>
@@ -255,6 +256,11 @@ One can argue whether it's per company definition or a global one but at least a
255256

256257
<details>
257258
<summary>What are MTTF (mean time to failure) and MTTR (mean time to repair)? What these metrics help us to evaluate?</summary><br><b>
259+
260+
* MTTF (mean time to failure) other known as uptime, can be defined as how long the system run before if fails.
261+
* MTTR (mean time to recover) on the other hand, is the amount of time it takes to repair a system.
262+
* MTBF (mean time between failues) is the amount of between failures of the system. These errors can be intermittent or fatal.
263+
258264
</b></details>
259265

260266
<details>
@@ -263,10 +269,12 @@ One can argue whether it's per company definition or a global one but at least a
263269

264270
<details>
265271
<summary>What is "infrastructure as code"? What implementation of IAC are you familiar with?</summary><br><b>
272+
IAC (infrastructure as code) is a declerative approach of defining infrastructure or architecture of a system. Some imlementations are ARM templates for Azure and Terraform that can work across multiple cloud providers.
266273
</b></details>
267274

268275
<details>
269276
<summary>How do you manage build artifacts?</summary><br><b>
277+
Build artifacts are usually stored in a repository. They can be used in release pipelines for deployment purposes. Usually there is retention period on the build artifacts.
270278
</b></details>
271279

272280
<details>
@@ -275,6 +283,13 @@ One can argue whether it's per company definition or a global one but at least a
275283

276284
<details>
277285
<summary>What deployment strategies are you familiar with or have used?</summary><br><b>
286+
287+
There are several deployment strategies:
288+
* Rolling
289+
* Blue green deployment
290+
* Canary releases
291+
* Recreate strategy
292+
278293
</b></details>
279294

280295
<details>
@@ -318,6 +333,7 @@ This situation might lead to bugs which hard to identify and reproduce.
318333

319334
<details>
320335
<summary>How to deal with a configuration drift?</summary><br><b>
336+
Configuration drift can be avoided with desired state configuration (DSC) implementation. Desired state configuration can be a declarative file that defined how a system should be. There are tools to enforce desired state such a terraform or azure dsc. There are incramental or complete strategies.
321337
</b></details>
322338

323339
<details>

0 commit comments

Comments
 (0)