西维蜀黍

【Architectural Pattern】Event-driven Architecture

Event-driven Architecture (EDA)

An event-driven architecture uses events to trigger and communicate between decoupled services and is common in modern applications built with microservices. An event is a change in state, or an update, like an item being placed in a shopping cart on an e-commerce website. Events can either carry the state (the item purchased, its price, and a delivery address) or events can be identifiers (a notification that an order was shipped).

Event-driven architectures have three key components: event producers, event routers, and event consumers. A producer publishes an event to the router, which filters and pushes the events to consumers. Producer services and consumer services are decoupled, which allows them to be scaled, updated, and deployed independently.

  ...


【Programming】Reactive Programming

  ...


【MySQL】Replication

MySQL Replication

Replication enables data from one MySQL database server (known as a source) to be copied to one or more MySQL database servers (known as replicas). Replication is asynchronous by default; replicas do not need to be connected permanently to receive updates from a source. Depending on the configuration, you can replicate all databases, selected databases, or even selected tables within a database.

  ...


【FreeBSD】Display Memory Info

$ dmidecode -t memory
...
Memory Device
	Array Handle: 0x0042
	Error Information Handle: Not Provided
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 8192 MB
	Form Factor: DIMM
	Set: None
	Locator: ChannelB-DIMM1
	Bank Locator: BANK 3
	Type: DDR3
	Type Detail: Synchronous
	Speed: 1600 MT/s
	Manufacturer: Kingston
	Serial Number: 6C0C3BA8
	Asset Tag: 9876543210
	Part Number: KHX1600C10D3/8GX
	Rank: 2
	Configured Memory Speed: 1600 MT/s
	...
  ...


【Distributed System】Consistency Analysist on Different Middlewares

Redis

需要注意的是,在所有master-slave系统中,可以是CAP中 CP 系统, 即C(strong consistency)可以被保证。

  ...