300x250
반응형

분류 전체보기 197

[Sphinx] Sphinx 검색엔진 2부 - 설정 및 사용

설정 이전 글에서 Sphinx 설치와 설정 방법에 대해서 알아보았습니다. 이번에는 어떻게 사용할 수 있는지에 대해서 알아보도록 하겠습니다. 현재 제 Database 의 설정은 다음과 같습니다. 이전에 포스팅 할 당시와 좀 다르다는 점 먼저 말씀드립니다. (서버가 변경되었습니다 ㅎ) Database Table 의 구조 mysql> desc words_kr; +-------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+------------------+------+-----+---------+----------------+ | id | int(1..

DB/Sphinx 2023.02.06

[Sphinx] Sphinx 검색엔진 1부 - 설치 및 설정

소개 Database 기반의 사이트를 설계하다보면, 키워드 검색 기능이 필요할 때가 있습니다. 사실 대부분 사이트가 이런 검색기능이 있습니다. 일반적으로 SQL 에서 검색이라고 하면 LIKE 를 많이 떠올립니다. 데이터의 양이 많치 않을 경우에는 LIKE 로 충분합니다만, 수백만건 이상 되는 데이터에 대해서 검색하려면, LIKE 에는 많은 무리가 있습니다. 기본적으로 FullTable Scan 을 하게 될테니까요. 이런 검색을 위해서 Database 마다 Full Text Search 를 고유한 방식으로 지원하고 있습니다. MySQL 에서도 FullText Search 를 지원하지요. 하지만 아무래도 서버의 로드가 올라가거나 하는 문제들이 발생합니다. 이를 해결하기 위해서 대부분 Sphinx 라는 이 녀..

DB/Sphinx 2023.02.06

[Sphinx] Sphinx 검색엔진 라이브러리

Sphinx 검색엔진 라이브러리 검색엔진이란 :: -인터넷에서 원하는 정보를 찾아 주는 프로그램. 키 워드를 입력하면 그 정보가 있는 데이터를 찾아서 제시해 줌. -Sphinx는 검색엔진 중 한 종류이다. Sphinx 사용 이유 :: -MySQL이 like 문으로 힘들게 데이터를 검색하는 반면, Sphinx를 사용하면 빠르고, 정확한 결과값을 내주기 때문에 사용. Sphinx 작동 방법 :: 사전에 스핑크스가 내가 조회하려는 테이블의 값을 압축하고 압축한 인덱싱 파일로 만들어서 기록해놓고, 사용자가 그 압축된 인덱싱을 조회하여 빠르게 데이터를 끄집어 써낼 수 있게 한다. 즉, 검색엔진은 대용량의 데이터를 미리 인덱싱화 한 후에 저장해두는 것이다. 스핑크스 오픈소스 라이브러리 공식 사이트 :: http:/..

DB/Sphinx 2023.02.06

웹 스토리보드 깔끔하게 작성하기

스마트폰이 나온 이후 웹 사이트는 급격하게 PC 웹에서 Mobile 웹으로 변경되었습니다. 사용자 화면은 모바일이 기본이지만 서비스 제공자가 사용하는 관리자모드는 여전히 PC 웹 기반으로작성됩니다. 첨부파일 웹 스토리보드 그리드.pptx 파일 다운로드 ​ 모바일 페이지의 그리드 모바일 화면을 그리기 위한 스토리보드 양식은 그리드 시스템을 적용하여 만들었습니다. ​ 이 그리드 시스템을 이용하여 모바일 화면을 구성해 보면 아래와 같습니다. 첫 번째 화면이 모바일에서 보여질 화면입니다. 두 번째 화면은 그리드 위에 화면 구성을 했을 때 모습입니다. 이해를 쉽게 하기 위해 세 번째 화면은 그리드를 화면 구성 위에 놓아보았습니다. ​ 스토리보드를 작성했는데 엉성하다. 페이지마다 스타일이 제 각각이다 하면 위치, ..

앱 서비스 기획 산출물

앱 기획이란 엔지니어가 볼 설계도를 만드는 것이며 서비스라는 아이디어를 구체화 시키는 과정입니다. ​ 앱을 만들기 위해서는 서비스 기획의 결과물인 스토리보드가 있어야 합니다 스토리보는란 메뉴, 화면, 규칙을 확정하여 디자이너, 프로그래머가 서비스를 만들 수 있도록 하는 설계도 제작 과정입니다. ​ 스토리보드 정보마인드맵, 서비스 프로세스, 사이트맵, 화면흐름도, 화면설계도로 구성됩니다. ​ ​ 표지 서비스명과 작성자, 작성일로 구성된 표지입니다. ​ ​ 개정이력 작성한 스토리보드의 수정 부분이 생기면 기록을 남깁니다. ​ ​ 파일명과 회의록으로 개정이력 관리 수정사항이 많으면 개정이력으로는 관리하기가 어렵습니다. 외주로 진행되는 작업의 경우 서비스를 만들기 위한 최종본만 의미있으므로 파일을 작업일자별로 ..

[AWS] 10-1.EC2 MySQL 설치

1. MySql 직접 설치 1. 설치 가능 여부 확인 sudo yum list mysql* - yum list를 확인해보니 mysql server가 존재하지 않는다. 분명히 예전엔 yum 을 통해 설치가 가능했었던 것 같은데, 다른 방법을 통해 설치. - 편의상 루트 계정으로 전환하여 설치 시작. sudo su 2. 최신 버전 MySql 다운로드 및 설치 - 현재 시점에서, 최신 mysql 버전 확인 https://dev.mysql.com/downloads/repo/yum/ - 다음 명령어로 현재 나의 linux 환경에 맞는 버전 다운로드 및 설치 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm yum localinsta..

[AWS] 9-2.EC2 SSH 무작위 로그인 시도 막기(무차별 대입 공격 방어)

[AWS] 9-2.EC2 SSH 무작위 로그인 시도 막기(무차별 대입 공격 방어) 0.들어가기 앞서 1. 이전 포스팅에서 특수한 목적 으로 인해 공개키 없이 ssh접속 가능하도록 설정 하였었다. - 사실 이는 매우 위험한 일이며 이로인해 본인의 SSH 접속인증이 뚫릴수 있는 가능성을 열어 둔 것과 같다. - Linux 서버를 공개망에서 사용하면서 방화벽을 사용하지 않는 경우 ssh 로그인을 지속적으로 시도하는 ip, 로그를 볼 수 있는데, 이는 무차별 대입 공격을 받고 있일 확률이 크다. 대부분 외국 IP 대역에서 지속적으로 ssh 로그인을 시도하는데 무작위 비밀번호를 대입하여 공격을 하고 있는 것이다. 실제로 테스트 해보면 중국, 싱가폴등 다양한 나라에서 ssh 로그인 시도 공격을 확인하는걸 볼 수 있..

[AWS] 9.AWS EC2 pem키 없이 접속 가능하도록 설정하기

[AWS] 9.AWS EC2 pem키 없이 접속 가능하도록 설정하기(AWS EC2 비밀번호로 접속 하기) 0.기존 User로 접속하여 신규 User 생성하기 1. 외부 ftp 오픈시 기본적인 KeyPair를 사용하지 않고 접속 허용하도록 해야하는 경우가 생겼다. - EC2는 기본적으로 머신 생성시 발급한 공개키로만 접근하도록 설정 되어있다. 이 방법이 가장 뛰어난 보안성을 제공하지만 특수한 상황 또는 고객의 요구 사항에 따라 Password Access가 필요한 상황도 있다. - 이럴때 이번엔 기존 User는 그대로 사용하고, 신규 유저를 생성하여 공개키 없이 접속 가능하도록 만들어 보자. 2. 키페어를 사용하여 기존 접속 EC2 인스턴스 접속 - git Bash 실행 #ssh -i '본인의pem경로' ..

[AWS] 8.AWS EC2 root 계정 활성화 시키기

[AWS] 8.AWS EC2 root 계정 활성화 시키기 이전 포스팅을 통해 EC2 리눅스를 설치 해보았다. 다만 root 권한이 필요 한 경우도 있지만, 기본적으로 aws에서 제공하는 AMI로 리눅스를 설치한 경우 해당 계정 접속이 막혀있다. AWS EC2 에서도 root 계정을 사용할 수 있고, 해당 방법에 대해 알아보자. Elastic IP 설정 ▶ 1. root 비밀번호를 먼저 변경하여 준다. #sudo passwd root ▶ 2. sshd_config 설정정보 변경 #sudo vi /etc/ssh/sshd_config :set nu 를 입력하여 보기 좋게 라인수 표시. 38 라인의 "PermitRootLogin yes" 부분의 주석을 해제하고 저장 (:wq) ▶ 3. 루트 경로에 .ssh 경로..

[AWS] 7.AWS Elastic IP (EIP) 고정 아이피 할당 하기

[AWS] 7.AWS Elastic IP (EIP) 고정 아이피 할당 하기 이전 포스팅에서 생성한 [WordPress Instance를 사용하여 실습] 을 해보았다. ※ Elastic IP (EIP) 고정 아이피 할당 하기 앞서 EC2 인스턴스의 Pubic IP 를 통해 해당 인스턴스에 접속 가능 하였다. 하지만, 인스턴스의 Public IP는 고정된 IP 주소가 아니라 유동적인 IP 주소 이다. EC2 인스턴스를 STOP, 재시작 하게 되면 IP 주소가 바뀐다. 그렇기 떄문에 해당 유동 IP로는 실제 서비스로 사용하긴 어렵다고 볼 수있다. 안정적으로 서비스를 운영 하기 위해서는 당연히 고정 IP가 필요하다. 그리고 운영 중 Scale Up을 할 때에도 당연히 고정 IP가 필요하다. ※ 다만, EIP는 ..

300x250
반응형