μ’μ μ½λλ₯Ό νλ¨νλ 건 μ£Όκ΄μ΄λ€. μ΄ κΈμ μ½μΌλ©΄ λ€μκ³Ό κ°μ λ΄μ©μ λν΄ μ΅μν μκ°ν 거리λ₯Ό μ»μ΄κ° μ μκΈ°λ₯Ό κΈ°λνλ€. μ½κΈ° μ¬μ΄ μ½λλ 무μμ΄κ³ μ μ½κΈ° μ½κ² μμ±ν΄μΌνκ³ κ·Έλ° μ½λλ μ΄λ»κ² νμνλμ§ κ°λ μ±μ λ³Έμ§μ μΌλ‘ μ£Όκ΄μ μΈ κ²μ΄λ©° κ·Έκ²μ΄ μ νν 무μμ μλ―Ένλμ§ νμ€νκ² μ μνκΈ°λ μ΄λ ΅λ€. κ°λ μ±μ ν΅μ¬μ κ°λ°μκ° μ½λμ κΈ°λ₯μ λΉ λ₯΄κ³ μ ννκ² μ΄ν΄ν μ μλλ‘ νλ κ²μ΄λ€. μ€μ λ‘ μ΄λ κ² νλ €λ©΄ λ€λ₯Έ μ¬λμ κ΄μ μμ 보μμ λ, μ½λκ° νΌλμ€λ½κ±°λ μλͺ» ν΄μλ μ μλμ§λ₯Ό μμνκ³ κ³΅κ°ν΄μΌ ν λκ° λ§λ€. μ λ΄μ©μ μ’μ μ½λ, λμ μ½λ : νλ‘κ·Έλλ¨Έμ μ½λ νμ§ κ°μ λ²μ΄λΌλ μ± μ ν λΆλΆμ΄λ€. μ΄ μ± μμ λ§νλ μ½λ νμ§μ ν΅μ¬ μμκ° μ¬λ¬κ°μ§ μλλ° κ·Έ μ€ νλλ κ°λ μ±μ΄λ€. μ¦,..

κΉνμλ, μ μ¬ 1μ£Όλ μ μΆνν΄μ! 2022λ 3μ 28μΌλΆλ‘ λ± ν¬μλ¬λμ ν©λ₯νκ³ μ΅κ·Όμ μ μ¬ 1μ£Όλ μ΄ λμμ΅λλ€!! λ± ν¬μλ¬λμ μ΄λ€ μκ°κ³Ό λ§μμΌλ‘ ν©λ₯νκ² λμκ³ μ§κΈκΉμ§ μ΄λ€ μΌλ€μ νκ³ , μμΌλ‘λ μ΄λ»κ² νκ³ μΆμμ§μ λν΄μ μ΄μΌκΈ°ν΄λ³΄λ €κ³ ν©λλ€. λ± ν¬μλ¬λ μ§μλΆν° ν©λ₯κΉμ§ 22λ μ΄μ μ΄μ§μ κ²°μ¬νκ³ μ¬λ¬ νμ¬μ μ°Ύκ³ μ§μνλ μ€ λ± ν¬μλ¬λκ° λμ λμκ³ λ°λ‘ μ§μνκ² λμμ΅λλ€. μ±μ©μ μ무λλ κ·Έ νμ¬μ κ°μΈμ΄ λ¨κΈ°μ μΌλ‘ κ²°νΌνλ κ²μ΄λΌ μκ°νκ³ κ°μΈμ μΌλ‘ μ§μ μ μ κ·Έ νμ¬μ λν΄μ μμΈν μμ보λ νΈμΈλ°, λ± ν¬μλ¬λλ κ·Έ λΉμ μ μκ² κ°μ₯ λ§€λ ₯μ μ΄μμ΅λλ€. κ·Έλμ μ΅μ’ μ€νΌκ° μμ λ ν° κ³ λ―Όνμ§ μκ³ ν©λ₯νκ² λ€ κ²°μ νκ³ μ±μ© νλ‘μΈμ€ μ§ν μ€μ΄λ λ€λ₯Έ νμ¬λ€μ μ°λ½ν΄μ μ£μ‘νλ€λ ..

gRPCλ μ μ€μ©μ μΌκΉ? μ΄ κΈμ gRPCλ₯Ό μ ν μ§ μΌλ§ μ λκ±°λ μλ‘κ² μμλ³΄κ³ μΆμ μ¬λμ λμμΌλ‘ go, gRPC κ·Έλ¦¬κ³ MSA νκ²½μμμ μ€λ¬΄ κ²½νμ κΈ°λ°νμ¬ μμ±λμμ΅λλ€. μ λ gRPCλ μΈνλΌ κ΅¬μΆμ μμ΄ λ€μ λ¬λ컀λΈκ° μλ νΈμ΄μ§λ§ κ΅μ₯ν μ€μ©μ μ΄λΌκ³ μκ°ν©λλ€. μ€λμ μ΄μ λν μ΄μΌκΈ°λ₯Ό ν΄λ³΄λ €κ³ ν΄μ. λ¨Όμ , gRPCλ 무μμΌκΉμ? gRPCλ ν λ¬Έμ₯μΌλ‘ λ€μκ³Ό κ°μ΄ μ μν΄λ³Ό μ μμ΅λλ€. gRPCλ Protocol Bufferλ₯Ό IDL(Interface Definition Language)λ‘ μ¬μ©νλ HTTP/2κΈ°λ°μ RPC νλ μμν¬μ λλ€. μμν λ¨μ΄λ€μ΄ λ§μ μ μμ κ² κ°μλ°μ! μ κΉ λͺ κ°μ§ μ΄ν΄λ³ΌκΉμ? RPC(Remote Procedure Call) RPCλ λ§ κ·Έλ..

κ°μ κ³ λ£¨ν΄(goroutine)κ³Ό μ±λ(channel)μ λν΄μ μμ보μ κ³ λ£¨ν΄(goroutine) κ³ λ£¨ν΄μ Goλ°νμμμ λΉλκΈ° μ²λ¦¬λ₯Ό μ΄μ©ν λμμ±μ μ§μνλ κ²½λ κ°μ μ°λ λμ΄λ€. κ°μ μ°λ λλΌλ κ²μ μ€μ λ‘ OSλ 벨μμ μ°λ λκ° μμ±λλ κ²μ΄ μλλΌ μ ν리μΌμ΄μ (Go)λ 벨μμ κ°μμ μ°λ λκ° μμ±λλ κ²μ μλ―Ένλ μ£Όμνμ λ°νμμμλ§ λμνκΈ° λλ¬Έμ main λ°νμμ΄ μ’ λ£λλ©΄ λͺ¨λ κ³ λ£¨ν΄μ΄ μ’ λ£λλ μ£Όμνμ go ν€μλλ₯Ό μ΄μ©ν΄ κ³ λ£¨ν΄μ μ μΈνλ€ λ€μ μμλ₯Ό ν΅ν΄μ κ³ λ£¨ν΄μ μ¬μ©λ²μ μμ보μ import ( "fmt" "time" ) func main() { // go ν€μλλ₯Ό μ΄μ©ν΄ κ³ λ£¨ν΄ μμ± -> λμμ μ€νλ¨. μ 체 μΆλ ₯μ 보면μ μ΄ν΄ν΄λ³΄μ go bar("foo") bar("bar") /..

κ°μ Goμ ꡬ쑰체(struct)μ νμ (type) κ·Έλ¦¬κ³ λ©μλ(method)μ λν΄μ μμ보μ ꡬ쑰체(struct) goμμλ cμ ꡬ쑰체μ μ μ¬ν ννλ₯Ό μ§μνλ€ κ΅¬μ‘°μ²΄λ₯Ό μ μΈν¨μΌλ‘μ¨ μλ‘μ΄ μλ£νμ μ μΈν μ μκ³ , type-safeμλ ν¨κ³Όκ° μλ€ μλ μμλ₯Ό ν΅ν΄ μμ보μ type user struct { name string age int } func main() { user := user{name: "mokhs00", age: 23} fmt.Println(user) } receiverμ method goμμλ receiverλ₯Ό μ΄μ©ν΄ λ©μλ κΈ°λ₯μ μ΄μ©ν μ μλ€ func (t T) Foo() {}νμμ΄λ©° κΈ°μ‘΄ ν¨μμμ μμ (t *T)κ° μΆκ°λ κ²μ΄λ€ (Tλ νμ μ΄λ€) Tμ λν rece..

κ°μ go μΈμ΄ μ¬μ©λ²μ λν΄μ μμ보μ λ€μ λͺ©μ°¨λ‘ μ§νλλ©° λ€λ₯Έ μΈμ΄λ‘ νλ‘κ·Έλλ°μ κ²½νν΄λ³Έ μ¬λ λμμΌλ‘ μμ±νλ€ κ°μ λ³μ, μμ μ μΈ(+μΆμ½ν μ μΈ) νμ ν¨μ μ μΈ(ignore value(_), defer, export function) 쑰건문(if, switch) λ°λ³΅λ¬Έ(for) pointer(*) λ°°μ΄(slice, array) λ³μ, μμ μ μΈ κΈ°λ³Έμ μΌλ‘ μμλ const, λ³μλ var ν€μλλ₯Ό μ΄μ©ν΄ μ μΈνλ€ μ¬λ¬ λ°©λ²μΌλ‘ λ³μ, μμ μ μΈλ κ°λ₯νλ°, μ΄λ μλ μ½λλ‘ μ΄ν΄λ³΄μ // κΈ°λ³Έ μ μΈ var age = 23 var name string name = "mokhs" // λ³μ μΆμ½ν μ μΈ : μλμ μμΈν μμ보μ role := "Backend Engineer" // μμ μ μΈ ..

https://www.acmicpc.net/problem/7576 7576λ²: ν λ§ν 첫 μ€μλ μμμ ν¬κΈ°λ₯Ό λνλ΄λ λ μ μ M,Nμ΄ μ£Όμ΄μ§λ€. Mμ μμμ κ°λ‘ μΉΈμ μ, Nμ μμμ μΈλ‘ μΉΈμ μλ₯Ό λνλΈλ€. λ¨, 2 ≤ M,N ≤ 1,000 μ΄λ€. λμ§Έ μ€λΆν°λ νλμ μμμ μ μ₯λ ν λ§ν www.acmicpc.net μ΄ν΄ νμ΄μ μμ λ¬Έμ λ₯Ό μ΄ν΄ν΄λ³΄μ ν λ§ν μ μ΅μ μνκ° 1μ΄λ§λ€ 1μΉΈμ© μ μ΄λλ μν©μ΄κ³ μ 체 ν λ§ν μ μ μ΄λλλ° κ±Έλ¦¬λ μ΅μ μκ°μ μΆλ ₯ν΄μΌνλ€ κ²°κ΅ νμμ μ§νν΄μΌνκ³ , κ° μ’νμ μ΅μ μκ°μ κΈ°λ‘ν΄μΌνλ―λ‘ BFSλ₯Ό μ΄μ©ν΄μΌνλ€ BFSλ₯Ό μ§ννλ©° costλ₯Ό κΈ°λ‘νκ³ νμ μ’ λ£ νμ cost μ€ κ°μ₯ ν° κ°μ μΆλ ₯νλ©΄ λλ€ νμ΄ μ¬κΈ°μ λ°©λ¬Έμ²λ¦¬λ μ΅μ ν λ§ν μ¬λΆλ‘ νλ€ = 1..

https://www.acmicpc.net/problem/2667 2667λ²: λ¨μ§λ²νΈλΆμ΄κΈ° κ³Ό κ°μ΄ μ μ¬κ°ν λͺ¨μμ μ§λκ° μλ€. 1μ μ§μ΄ μλ κ³³μ, 0μ μ§μ΄ μλ κ³³μ λνλΈλ€. μ² μλ μ΄ μ§λλ₯Ό κ°μ§κ³ μ°κ²°λ μ§μ λͺ¨μμΈ λ¨μ§λ₯Ό μ μνκ³ , λ¨μ§μ λ²νΈλ₯Ό λΆμ΄λ € νλ€. μ¬ www.acmicpc.net μ΄ν΄ ν΄λΉ λ¬Έμ λ 2μ°¨μ λ°°μ΄λ‘ μ£Όμ΄μ§λ mapμ νμνμ¬ μ°κ²°λ μ§μμ μ°Ύλ λ¬Έμ μ΄λ€. μ¦ mapμ μννλ©° λ°©λ¬Έμ²λ¦¬λμ§ μμ μ’νκ° μλ€λ©΄ ν΄λΉ μ’νλ₯Ό κΈ°μ€μΌλ‘ μΈμ ν μ’νλ₯Ό λͺ¨λ λ°©λ¬Έμ²λ¦¬νλ€. μ΄λ κ²νλ©΄ μ°κ²°λ μ§μμ λͺ¨λ λ°©λ¬Έμ²λ¦¬λ κ²μ΄κ³ mapμ μν μ€μ λ°©λ¬Έλμ§ μμ μ’νλ₯Ό μ°Ύλλ€λ©΄ μλ‘μ΄ μ§μμ λ°κ²¬μ μλ―Ένλ€. λ°λΌμ mapμ μννλ©° λ°©λ¬Έλμ§ μμ μ’νλ₯Ό μ°Ύμ μ ν΄λΉ μ’νλ₯Ό μμ..
- Total
- Today
- Yesterday
- μ½λ©ν μ€νΈ
- μ’μ μμ§λμ΄
- μ€ν/ν
- μΆμ μ§λ
- μ₯μ νκ³
- μκ³ λ¦¬μ¦
- λ°±μ€
- νλ‘κ·Έλλ¨Έμ€
- mysql metadata_locks
- kotlin s3 upload
- 2024νκ³
- μ’μ κ°λ°μ λκΈ°
- Golang
- HTTP
- ν΄μ
- 2023 κ°λ°μ νκ³
- κΉμ΄/λλΉ μ°μ νμ(DFS/BFS)
- mysql
- μ’μ κ°λ°μ
- Aws Reinvent 2023
- 2023 νκ³
- golang oomkilled
- mysql metadata lock
- AWS re:Invent 2023
- ν(Heap)
- mysql μ€ν κ³ν
- νΈλμμ 격리 μμ€
- mysql mdl
- grpc client
- Go
μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |