λ¬Έμ μν©
- ex) λλͺ μ ν΄λΌμ΄μΈνΈκ° λμμ νμ₯μλ₯Ό μΆκ°ν κ²½μ° μ€λ³΅ μΆκ° λ¬Έμ κ° λ°μν μ μμ΅λλ€.
ν΄κ²°
- Redisson λΆμ°λ½μ μ μ©ν΄ Lockμ νλνμ λλ§ νμ₯μλ₯Ό μΆκ°ν μ μλλ‘ κ΅¬νν΄ ν΄κ²°νμ΅λλ€.
- Lockμ νλνλ μ½λλ₯Ό AOPλ₯Ό μ΄μ©ν΄ μ΄λ Έν μ΄μ ν μμΌ μ½λμ μ μ§λ³΄μμ±μ ν₯μμμΌ°μ΅λλ€.
λ¬Έμ μν©
- ex) κ³ μ νμ₯μμ μ‘΄μ¬νλ comμ μ¬μ©μκ° μμλ‘ μ»€μ€ν νμ₯μμμ μΆκ°νλ €κ³ ν μ μμ΅λλ€.
ν΄κ²°
- 컀μ€ν
νμ₯μλ₯Ό μΆκ°νκΈ° μ , κ³ μ νμ₯μμ μ‘΄μ¬νλ νμ₯μμΈμ§ νμΈνκ³ μ‘΄μ¬ν κ²½μ° μλ¦Ό μ°½μ λμ ν΄κ²°νμ΅λλ€.
λ¬Έμ μν©
- ex) 컀μ€ν νμ₯μμ μ‘΄μ¬νλ jpgλ₯Ό μ¬μ©μκ° μ€λ³΅μΌλ‘ μΆκ°νλ €κ³ ν μ μμ΅λλ€.
ν΄κ²°
- 컀μ€ν
νμ₯μλ₯Ό μΆκ°νκΈ° μ , νμ¬ μ»€μ€ν
νμ₯μμ μ‘΄μ¬νλ νμ₯μμΈμ§ νμΈνκ³ μ‘΄μ¬ν κ²½μ° μλ¦Ό μ°½μ λμ ν΄κ²°νμ΅λλ€.
ν΄κ²°
- 컀μ€ν νμ₯μλ₯Ό μΆκ°νκΈ° μ , (μ 체 νμ₯μ - κ³ μ νμ₯μ) >= 200 μΌ κ²½μ° μμΈ λ°μ
private void validateExtensionCount(InsertExtensionDto dto) {
List<String> list = findExtension(dto.getKey());
List<String> customExtensions = list.stream()
.filter(ext -> !ExtensionBlockService.FIXED_ITEMS.contains(ext))
.toList();
if (customExtensions.size() >= 200) {
throw new RuntimeException("컀μ€ν
νμ₯μλ 200κ° κΉμ§λ§ μΆκ°ν μ μμ΄μ.");
}
}