based on this course
First, you need to have Go installed. Follow the instructions here. Or simply use brew:
brew install go
go version
Based on this Video
gotraining/README.md at master · ardanlabs/gotraining · GitHub
- Don’t get impress by programs with a large number of LoC. this is a big problem.
Based on this course
DevSecOps build on the idea that cross-functional teams must work together and that everyone is responsible for security. The DevOps mantra of "automate everything" is central to DevSecOps. Areas where we can automate security:
- Software version control
- Continuous integration
- Continuous testing
- Configuration management and deployment
- Continuous monitoring
based on this course
Numbers and strings are values. Objects and functions are values, too. Our code interacts with values, but values exist in a completely separate space. My code contains instructions like “make a function call,” “do this thing many times,” or even “throw an error.” I might refer to values in my code, but they don’t exist inside my code.
- Primitive Values. They can be numbers and strings, among other things
- Undefined (undefined), used for unintentionally missing values.
Cloud Native apps = cloud + orchestration + containers
-- install k8s cli-tool kubectl for sending commands to k8s API server
-- you may want to alias kubectl to something shorter like k. Add alias k=kubectl
-- in your bash|zsh profile
- Node - a physical or virtual machine that hosts services
- Nodes also referred to as members.
- Examples
- Your computer
- An AWS EC2 instance
- A bare metal machine in your private data center
- Service - executing software that provides utility via an interface
- Typically long-lived process listening on a port(s)
- Examples
- A web server (nginx, apache, iis)
Consul provides a solution to the following challenges:
- Service Discovery. It acts as an internal DNS server. No more internal load balancers?
- Failure Detection. Health checking. It automatically removes failed nodes and services from the DNS response it gives to clients. Consul runs an agent in each server which are in charge of the health of all local services, by doing this, it distribute the health checking task. Agents talk to each other to share information about the services/nodes they are monitoring, adding or removing nodes or services as they become available or start failing.
- Multi Datacenter. Consul is multi datacenter aware so you can have services available in multiple datacenters but using consul you can connect to locally deployed services in the same datacenter where the request is being originated, instead of going to the other datacenter for no reason. Datacenter is a logical concept. Talks to local services first and failover to ther datacenters if it needs to.
Are there any sessions blocking other sessions in the DB? Blocking session is the cause of lot of ACTIVE
sessions in the DB and represent 2 or more sessions trying to touch the same data. We need to avoid this situation.
SELECT s1.username || '@' || s1.machine
|| ' ( SID=' || s1.sid || ' ) is blocking '
|| s2.username || '@' || s2.machine || ' ( SID=' || s2.sid || ' ) ' AS blocking_status,
st1.sql_text statment_1,
st2.sql_text statment_2
FROM v$lock l1, v$session s1, v$lock l2, v$session s2, sys.v_$sql st1, sys.v_$sql st2
cyclic redundancy check. crc32
is supposed to be faster than shasum
, you should only use shasum
if the output of crc32
for two files is equal, otherwise, you are safe to say the two files are not equal.
crc32 /path/to/file
md5 file.iso
md5 /path/to/file
shasum -a 1 file.iso