Monday, March 15, 2021

GoPro 9 vs Insta360 One R, Youtube Video Camera

Autonomous sit-stand desk: https://www.autonomous.ai/?utm_source... Promo code: JAVABRAINS008 (8%) LG Monitor: https://www.lg.com/us/business/deskto... Corsair Mechanical keyboard: https://www.corsair.com/us/en/Categor...  

HD Logitech webcam: https://www.logitech.com/en-us/produc... 

Corsair Keyboard


IPAD 12" Pro + Apple Pencil

obsproject.com    OBS Studio

KVM Switch - Toggles Keyboard/Mouse between 2 PC/Laptop



GoPro Hero 9 Black vs. Insta360 One R 1-inch: Which Is Better?





How To Film Yourself - 9 Easy Steps For Better Solo B Roll




  • Audio 
  • Picture 
  • Lighting 
  • BRoll
  • Storytelling
  • Editing

Microservices - Characteristics - Martin Fowler – Microservices


Characteristics of a Microservice Architecture
Componentization via Services
Organized around Business Capabilities
Products not Projects
Smart endpoints and dumb pipes
Decentralized Governance
Decentralized Data Management
Infrastructure Automation
Design for failure
Evolutionary Design

CHAOS Monkey - Netflix

SAGA, Compensation Transaction, Data Consistency, Circuit Breaker, Eventual Consistency

Microservices



Data Consistency -> https://docs.microsoft.com/en-us/previous-versions/msp-n-p/dn589800(v=pandp.10)
Strong Data Consistency vs Eventual Consistency


Circuit Breaker pattern
https://docs.microsoft.com/en-us/azure/architecture/patterns/circuit-breaker#context-and-problem
The purpose of the Circuit Breaker pattern is different than the Retry pattern.
The Retry pattern enables an application to retry an operation in the expectation that it'll succeed.
The Circuit Breaker pattern prevents an application from performing an operation that is likely to fail


ELK - Elastic Stack - ElasticSearch, Logstash, Kibana, Beats

That's Elasticsearch, Kibana, Beats, and Logstash (also known as the ELK Stack). -> https://www.elastic.co/what-is/elk-stack

Ingest -> https://www.elastic.co/logstash

Search -> https://www.elastic.co/elasticsearch/

Lightweight data shippers

Beats is a free and open platform for single-purpose data shippers. -> https://www.elastic.co/beats/

They send data from hundreds or thousands of machines and systems to Logstash or

Visualisation ->  https://www.elastic.co/kibana


Application performance management -> https://en.wikipedia.org/wiki/Application_performance_management

Boundary Event, BPMN, Flowable, Intermediate Event, Boundary Event, Cancel Boundary Event, Compensation Boundary Event




Event Icons are always Circular

Throwing Events -> Triggering something
Catching Events -> Reacting to a Trigger : Catching Message Event

Types of Event
Events that occur at the beginning of the process are called Start events(thin narrow line) – and every process starts with an event.
Events that occur in the middle of the process (between activities) are called Intermediate events (thin double line).
Events that occur at the end of the process are called End events(thick single line) and every process has at least one end event.

Boundary Events -> Are Attached to Tasks(Rounded Rectangle) and is always an Intermediate Event
They can be Interrupting and Non-Interrupting
Interrupting - They disturb flow and block main process - Solid Line (Default)
Non-Interrupting - They don't disturb the actual flow and continue in parallel - Dashed Line

An intermediate signal throw event is visualized as a typical intermediate event (circle with smaller circle inside), with the signal icon inside. 
The signal icon is black (filled), to indicate its throw semantics.

Cancel Boundary Event
Compensation Boundary Event

The compensation boundary event is activated when the activity it is attached to completes successfully. 
At this point, the corresponding subscription to the compensation events is created. 
The subscription is removed either when a compensation event is triggered or when the corresponding process instance ends.


Sunday, March 14, 2021

DTU - Database Transaction Unit

https://www.spotlightcloud.io/blog/what-is-dtu-in-azure-sql-database-and-how-much-do-we-need



DTU represents a mixture of the following performance metrics as a single performance unit for Azure SQL Database:

  • CPU
  • Memory
  • Data I/O and Log I/O

Output Clause - MSSQL - INSERTED, DELETED - Microsoft Azure Database

https://docs.microsoft.com/en-us/sql/t-sql/queries/output-clause-transact-sql?view=sql-server-ver15

https://www.sqlbook.com/sql-server/output-clause/

https://blog.sqlauthority.com/2017/06/29/sql-server-get-column-names-specific-table/

https://docs.microsoft.com/en-us/azure/architecture/patterns/compensating-transaction

-- Insert 3 rows of data into this table and use the OUTPUT
-- clause to return all of the columns for each row we insert
INSERT INTO Organisation
OUTPUT [Inserted].*
VALUES ('Super Co.', 'USA'),
('Great Co.', 'UK'),
('Fab Co.', 'India');


INSERT TABLE-1 VALUES (“X”, “Y”)
UPDATE TABLE-2 SET COLUMN-2A=”New-A”, COLUMN-2B=”New-B” WHERE COLUMN-2C=”value-C”
DELETE TABLE-3 WHERE COLUMN-3A=”Val1” AND COLUMN-3G=”Val2”

INSERT TABLE-1
OUTPUT INSERTED.* INTO @Table1-Var -- Table1-Var will have rows inserted along with their IDs
VALUES (“X”, “Y”)

UPDATE TABLE-2 SET COLUMN-2A=”New-A”, COLUMN-2B=”New-B” WHERE COLUMN-2C=”value-C”
OUTPUT DELETED.* INTO @Table2-Var -- All updated rows with old values and IDs

DELETE TABLE-3 
OUTPUT DELETED.* INTO @Table3-Var -- All deleted rows with IDs
WHERE COLUMN-3A=”Val1” AND COLUMN-3G=”Val2”


-- Record compensating transaction for INSERT using 
record-compensating-txn(<process-instanceId>, <process-block-id>, “TABLE-1”, “DELETE”, @Table1-Var)

-- Record compensating transaction for UPDATE using 
record-compensating-txn(<process-instanceId>, <process-block-id>, “TABLE-2”, “UPDATE”, @Table2-Var)

-- Record compensating transaction for DELETE using 
record-compensating-txn(<process-instanceId>, <process-block-id>, “TABLE-3”,  “INSERT”, @Table3-Var)

Azure - Pipeline - Add Approver for Stage

https://learn.microsoft.com/en-us/azure/devops/pipelines/process/approvals?view=azure-devops&tabs=check-pass