전체 글 108

1. 깨끗한 코드

코드가 존재하리라 - 프로그래밍의 방식은 진화를 거듭하며 미래에는 프로그래머라는 직업이 줄어들 거라고 생각하는 이가 다수이다. 하지만 GUI등의 방식을 통한 프로그래밍에는 한계가 있다. 상세한 요구사항을 실현하기 위해서는 프로그래머의 역할이 필수불가결하다. 나쁜 코드 - 프로그래머로서 이제 막 5년을 풀로 채운 내가 크게 공감할 수 있었던 파트. - 시간에 떠밀려, 스케쥴에 맞추기 위해, 혹은 너무나 하기 싫은 개발 부분. 일단은 돌아가는 기능을 만들어놓고 나중에 리팩토링하지 뭐, 라는 생각으로 어떻게든 넘어갔던 순간들. 하지만 실무에서 코딩 경험을 가진 대다수의 프로그래머들은 알고 있을 것이다. 나중은 오지 않는다는 것을. 나쁜 코드로 치르는 대가 - 위와 같은 나쁜 코드가 쌓이고 쌓여 결국 프로젝트를..

RDS SQL Server Audit 설정

# 1. 배경 - 고객사 AWS 환경에 DB 서버 감사 로그 설정 중에 조금 헤맸던 부분 메모 - RDS의 Option group을 설정하면, 각 DB 인스턴스 타입에 따라 설정할 수 있는 Option이 있다. - 이번에 사용해 본 Option은 SQL Server의 Audit. - Option group을 설정한 뒤, SQL Server Management Studio를 이용해서 서버 감사 설정이 따로 필요하다. - 이번 메모에서 적어두고 싶은 부분은 AWS Console에서의 조작. # 2. 내용 - Option 상세 설정 시, 감사 로그 파일을 업로드할 S3와 이를 수행할 IAM Role을 선택해야 한다. - 50MB를 최대로 설정하여 감사 로그 파일이 최대 용량을 채워 새로운 파일을 작성했을 시점..

개발이야기/AWS 2021.08.20

AWS Lambda Timeout Error의 원인과 해결방안

# 개요 - 고객사의 AWS 환경에서 MS SQL 서버 감사 로그를 설정하는 작업 - 로그 파일은 최대 50MB, [SUCCESSFUL LOGIN GROUP] 지정 https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.SQLServer.Options.Audit.html SQL Server Audit - Amazon Relational Database Service SQL Server Audit In Amazon RDS, you can audit Microsoft SQL Server databases by using the built-in SQL Server auditing mechanism. You can create audits and aud..

개발이야기/AWS 2021.08.19

6-02 RAID

RAID(Redundant Arrays of Inexpensive Disks)는 복수의 저장 드라이브(HDD/SSD)를 하나의 드라이브처럼 보이게 해서, 다중화와 고속화 등을 가능하게 하는 기술이다. 저장 드라이브는 데이터의 쓰기나 읽기 등에 의해 노후화 되거나 고장이 나기 쉬운 부품 중에 하나이다. 데이터 손실이나 단순한 서비스의 손실이 아니라, 돈이나 신뢰의 손실로 직결될 수 있다. RAID Controller Card라고 하는 전용 카드를 사용해서 RAID를 구성하고 드라이브가 장애를 일으켰을 때의 영향을 최소화한다. RAID에는 데이터의 분산 방법이나 다중화 방법에 따라 몇가지 타입으로 나누어지는데, 여기서는 서버에서 주로 사용하는 3가지에 대해서 소개한다. 1. RAID1 미러링이라고 불리는 기..

6-01 서버와 장애는 한몸

아무리 좋은 성능을 가진 컴퓨터라도 전기의 힘으로 움직이는 기계에 지나지 않는다. 그렇기 때문에 오래 사용하다 보면 언젠가는 문제가 일어나기 마련이다. 이런 상황이 자신의 개인 컴퓨터라면 수리를 맡기면 되겠지만, 중요한 데이터를 보관하고 있는 서버라면 문제가 달라진다. 서버 시스템에서는 언제 어디에서 문제가 발생해도 계속 서비스를 제공할 수 있도록 모든 구성요소에 대한 만일의 대비책을 세워둬야 한다. # 장애 대책의 기술 서버 장애시의 대책으로는 크게 다중화 기술과 백업으로 나눌 수 있다. 다중화 기술은 같은 구성요소를 복수로 조합하여 논리적으로 하나로 보이게 하는 기술이다. Teaming, RAID, Clustering, 서버부담분산기술, 광역부담분산기술 등이 다중화 기술에 해당된다. 다음으로 백업은 ..

다시 2달만

일이 바빠졌다는 핑계로 블로그도 안하고 아침루틴도 흐지부지되고 워라밸이 이렇게나 중요했던가 코로나로 소중한 일터도 잃고 생계도 힘들어진 사람들을 생각하면 집에서 편하게 일할 수 있다는 사실에 감사해야겠지만 그것도 어느정도 해야지.. 하면서도 애초부터 확실히 따지지 못한 본인의 잘못을 탓해본다 어찌되었든 스노우볼이 되어 돌아온 태스크들은 지난 2달을 거의 순삭했다 물론 그 와중에 여름휴가도 가고 생일도 즐겼지만 말이다 개인시간이 너무 줄고 자기계발이랍시고 하던 것들도 손을 놓게 되어 속상하지만 인생이 뭐 그런거 아니겠는가 조금씩 다시 시작해봐야지