오늘 배운것들

8/24일 배운것들

뇌장하드 2022. 8. 24. 23:10

8/24

[Linux]

Local Pc에서 리눅스 서버 간에 파일 전송

wget사용

파일 호스팅에서 파일을 올려준다.

https://i.imgur.com/mTveuJv.png

wget {이미지 링크}

파일 이름 수정
mv {원본 파일} {수정할 이름}

site2.com/like.png 입력

filezilla를 사용해보기

FileZilla

원하는 파일을 따블클릭시 쉽게 전송이 된다.

FTP란

응용계층에서 사용되는 프로토콜이다.

File Transfer Protocol

컴퓨터 사이의 파일 전송을 위한 프로토콜이다.

TFTP 이것도 역시 파일 전송을 위한 프로토콜이다. 하지만 FTP보다 단순한 방식으로 전송을 하여 데이터 손실이 있을수 있다.

왜 손실이 있는지 검색을 해보니 UDP프로토콜을 사용해서 이다. UDP는 TCP에 비해 빠른 전송 그리고 잘못된 전송에 대한 책임이 일절 없다. 즉 실시간 스트리밍에서 많이 쓰인다. 그래서 스타 UDP서버에서 하는것이 게임을 쾌적하게 할수 있는 이유이다.

이외에도 다른 차이점이 존재한다.

[Spring]

# 4. 제목 + 내용 + 작성자 + 답변내용 검색
SELECT Q.*
FROM question AS Q
LEFT JOIN site_user AS SU
ON Q.author_id = SU.id
LEFT JOIN answer AS A
ON Q.id = A.question_id
WHERE (
    Q.subject LIKE '%sbb는 질문답변 게시판 입니다.%'
    OR
    Q.content LIKE '%sbb는 질문답변 게시판 입니다.%'
    OR
    SU.username LIKE '%sbb는 질문답변 게시판 입니다.%'
    OR
    A.content LIKE '%sbb는 질문답변 게시판 입니다.%'
)
GROUP BY Q.id;
# 5. 제목 + 내용 + 작성자 + 답변내용 + 답변작성자 검색
SELECT Q.*
FROM question AS Q
LEFT JOIN site_user AS SU
ON Q.author_id = SU.id
LEFT JOIN answer AS A
ON Q.id = A.question_id
LEFT JOIN site_user AS A_SU
ON A.author_id = A_SU.id
WHERE (
    Q.subject LIKE '%admin%'
    OR
    Q.content LIKE '%admin%'
    OR
    SU.username LIKE '%admin%'
    OR
    A.content LIKE '%admin%'
    OR
    A_SU.username LIKE '%admin%'
)
GROUP BY Q.id;

이렇게 쿼리를 직접 작성하는것이 아닌 JPA를 사용해서 쉽게 쿼리문을 만들수 있다.

findDistinctBySubjectContainsOrContentContainsOrAuthor_usernameContainsOrAnswerList_contentContainsOrAnswerList_author_username

위와같이 메서드 이름만으로 쿼리문을 작성하는것과 같다.

다양하게 조합을 하여서 나만의 쿼리를 만들수 있다.

하지만 너무 복잡한경우에는 JPQL이나 QueryDSL을 사용한다.

검색을 잘해주는 Elasticsearch

엘라스틱서치를 사용하려면 주로 ELK 를 구축해준다.

흩어진 서버에서 나오는 로그를 수집해주는 logstah

한곳에 모여지는 elasticsearch

elasticsearch의 데이터를 보기 좋게 시각화를 위한 kibana

엘라스틱 서치는 실시간에 가까운 검색능력을 보유한다. 이를 NRT(Near Realtime) 이라고 한다.

실시간이 안되는 이유는 indexing이 되는시간이라고 한다.

ELK 서버 구축해보기

  1. 스프링에서 로그를 logstash로 보내기
  1. 전달 받은 로그를 가공을 하여서 엘리스틱 서치에 저장
  1. 엘리스틱에 있는 데이터를 보기 좋게 시각화

'오늘 배운것들' 카테고리의 다른 글

리눅스와 스프링 공부  (0) 2022.08.23