이번 글에서는 연산자, 조건 및 반복에 대해서 살펴보는 글을 적어보려 합니다. 이전 글은 바로 아래에 링크로 걸어두겠으니 필요하신 분들은 확인해보시면 좋을 것 같습니다~ https://abbo.tistory.com/454 [Shell Script] 1탄 - 기본 설정과 명령어에 대해 알아보기 최근에 부쩍 DevOps와 관련된 컨텐츠를 작성하면서 자연스럽게 Linux 공부를 진행하던 와중, Shell Script라고 하는 Command Line Interface의 파일 관리를 집중적으로 하게 되었습니다. 그렇다보니 Shell Script abbo.tistory.com 1. 오퍼레이터 (연산자) 기본적으로 연산자를 표현하는 방법은 expr ${숫자} ${연산자} ${숫자} 로 표현하게 되고 ${연산자}에 아..
최근에 부쩍 DevOps와 관련된 컨텐츠를 작성하면서 자연스럽게 Linux 공부를 진행하던 와중, Shell Script라고 하는 Command Line Interface의 파일 관리를 집중적으로 하게 되었습니다. 그렇다보니 Shell Script에 대해 몰랐던 부분을 더 알게 되었고, 이를 활용하고자 하는 방법에 대해서 글을 작성해보려 합니다. 1. 기본 설정 스크립트 파일은 기본적으로 아래의 형식으로 시작합니다. #!/bin/sh 위 한줄의 내용이 의미하는 것은 시스템에 지금부터 셸 스크립트를 쓴다는 것을 선언하는 것입니다. 마치 C언어세어 #include 하는 것과 같은 맥락인거죠. 2. 스크립트 파일 실행하기 스크립트 파일을 hello.sh로 만들었다면 사용법은 아래처럼 쓸 수 있습니다. /bin..

Java의 List는 Collection 중 가장 유용한 자료구조 중의 하나입니다. LinkedList와 ArrayList는 모두 Java에서 제공하는 List 인터페이스를 구현한 Collection 구현체입니다. 하지만 인터페이스만 같을 뿐 내부적으로 동작하는 방식은 다릅니다. 두 자료 구조의 차이를 알아보고 LinkedList와 ArrayList를 적절하게 사용하도록 해보는 것이 이 글을 작성한 또는 가져온 이유입니다. List 인터페이스를 구현하는 LinkedList 또는 ArrayList는 왜 사용할까요? Java 에서 LinkedList 와 ArrayList 적절하게 사용하기 Java 에서는 기본형(Primitive Types) 또는 인스턴스(Reference Type)를 저장하기 위해 보통 ..
오늘은 스프링 프레임워크 또는 부트를 개발하면서 제일 많이 생성하게 되는 클래스 중 하나인 Test 클래스를 생성하는 방법과 사용법에 대해 간단히 설명하고자 합니다. 1. 기본형 기본적으로 생성하는 클래스의 원형은 아래처럼 됩니다. @SpringBootTest public class SpringAppTestClass { @Test void nameTest() { } } 그치만 테스트를 진행하면서 부팅 속도가 상당히 느리다면, 이는 기본적으로 Spring Boot 를 실행하면서 연결되는 모든 Bean들을 가져오는 시간이므로 이 시간을 사용하면서 테스트를 진행하는 것은 굉장히 비효율적입니다. 2. 변형형 그러면 기본형이 아닌 테스트에 필요한 Bean만 불러오는 방법은 없을까요? 당연히 있습니다. a. @We..

ECS를 사용하려면 VPC 엔드포인트에 설정을 하여야 합니다. SNS(Simple Notification Service), SES(Simple Email Service) 등이 가장 대표적이며 문제 로그는 이와 같이 발생합니다. Caused by: com.amazonaws.SdkClientException: Unable to execute HTTP request: Connect to email.ap-northeast-2.amazonaws.com:443 [email.ap-northeast-2.amazonaws.com/13.125.10.216, email.ap-northeast-2.amazonaws.com/52.78.123.6, email.ap-northeast-2.amazonaws.com/43.200.122..

프로젝트를 개발하면서 현재 앱 버전을 확인하는 내용을 알아보려 합니다. 여기서는 Spring Boot 프로젝트와 React 프로젝트의 앱 버전을 알아보는 방법을 적어보도록 하겠습니다. 1. Spring Boot 스프링 프레임워크의 경우 Maven 을 사용할지 Gradle 을 사용할지 나뉘게 됩니다. 먼저 Maven 을 확인해보겠습니다. Maven 가장 먼저 많이 사용하는 Maven의 버전 확인 방법입니다. pom.xml에 나와있는 version을 체크하는 방법으로 아래 스택오버플로우에도 나와있지만 버전을 확인하는 방법은 꽤나 많습니다. 가장 먼저 위에 것부터 확인해보도록 하겠습니다. https://stackoverflow.com/questions/3545292/how-to-get-maven-project..

이번 글에서는 MySQL 에서 자주 사용하는 SQL인 Insert 문을 수행하는 방법과 데이터 조회와 동시에 데이터 입력을 병행하는 방법을 알아보고자 합니다. 기존에 INSERT 문의 예시는 아래와 같습니다. 1. INSERT SQL 아래 쿼리는 3개의 ROW를 입력하는 것을 가정하고 기본적인 쿼리를 작성했습니다. INSERT INTO table_name (column1, column2, column3, column4, ...) VALUES ('value1', 'value2', 'value3', 'value4', ...), ## ROW1 ('value1', 'value2', 'value3', 'value4', ...), ## ROW2 ('value1', 'value2', 'value3', 'value4'..

ACM(Amazon Certification Manager) 인증서를 사용해서 현재 운용중인 EC2를 HTTPS 인증을 하기 위해 이전에 작성한 글에서는 Fargate를 사용할 때를 주로 설명했었습니다. https://abbo.tistory.com/435 [AWS] ECS HTTPS 적용하기 ECS에서 HTTP는 로드밸런서에 걸려있는 리스너들이 작동하면서 변경됩니다. HTTP로 서버를 올리는 것은 어렵지 않지만, HTTPS 인증을 하기 위해서는 아래처럼 작업이 필요합니다. 도메인 준비 (Route 5 abbo.tistory.com ACM을 발급하는 것은 위 글에 자세히 나와있습니다. 이제 발급된 ACM 인증서를 가지고 EC2에 연결하는 방법을 알아보려 합니다. 기본적으로 EC2를 사용할 때는 nginx를..