전체 글 38

[Guide | Marketing] 웹사이트 수집 설정 - Naver

운영중인 블로그나 사이트가 네이버에 수집되어 노출될 수 있도록 설정하는 방법을 정리한다.> 작성일 : 2022-01-28  네이버계정에 로그인계정이 없다면 아래메뉴를 통해 생성하고 로그인한다.  Naver Search Advisor에 접속 & URL 등록https://searchadvisor.naver.com/웹마스터 도구 클릭사이트 관리 > 사이트 등록 에서 프로토콜(http or https)을 포함해서 입력① html 파일을 클릭하여 다운로드 받는다.② 서버의 서비스폴더에 저장한다. (https://{입력한 URL}/{html파일} 경로로 접근이 가능해야함)③ 소유확인을 눌러 등록을 완료한다.   robots.txt 등록 - 수집될 내용에 대한 제한설정User-agent:*Allow:/① 위와같..

Guide 2025.01.04

[Guide | Git] 비밀번호 변경

Git 비밀번호 변경방법을 정리한다.> 작성일 : 2022-01-10> OS : windows 10 Pro> Git : GitLab Community Edition 11.11.3  GitLab에 접속하여 비밀번호를 변경Settings > Password 메뉴에서 현재 비밀번호 / 변경할 비밀번호를 입력한다.  비밀번호 변경 후 클라이언트 접속시 에러발생비밀번호 변경 후 아래와 같은 에러가 발생한다.remote: HTTP Basic: Access deniedfatal: Authentication failed for 'https://-----------------'  관리자 권한 콘솔을 실행하여 리셋명령 프롬프트 우클릭 > 관리자 권한으로 실행git config --system --unset credenti..

Guide 2025.01.04

[Guide | App - Android] React Native Android Release 배포

하이브리드앱을 빌드하고 배포하는 과정을 정리한다.> 작성일 : 2021-08-22> OS : macOS Big Sur 버전 11.5> CPU : Intel  KeyStore 생성cd {UserHome}/{AppPath}/android/appkeytool -genkey -v -keystore opendocs_music-release-key.keystore -alias opendocs_music_key -keyalg RSA -keysize 2048 -validity 10000   빌드설정android/gradle.properties 파일에 환경변수 설정OPENDOCS_MUSIC_RELEASE_STORE_FILE=opendocs_music-release-key.keystoreOPENDOCS_MUSIC_RELE..

Guide 2025.01.04

[Guide | App - iOS] 앱개발시 테스트환경 구축

배포환경 구축의 중요성과 iOS환경에서 사내배포하는 방법에 대하여 정리해보자.> 작성일 : 2019-08-17> 수정일 : 2025-01-03 앱개발이 완료되면 버그 및 개선사항을 이슈화하고 수정하기 위해 사내배포가 필요하다.수정 -> 배포 -> 수정 -> 배포 -> 수정 -> 배포 -> 수정 -> 배포 ...> 한번에 수정하고 완료된다면 이상적이겠지만 대부분의 경우 수정과 배포를 여러번 반복하게된다.> 배포절차를 정리하고 자동화가 필요한 이유이다. iOS의 경우 단순히 빌드파일(.ipa)로 사내배포가 불가하고 다음 4가지 방법으로 정리된다.   디바이스를 직접 맥에 연결하여 빌드여러기기에서 테스트를 해야하는 경우 번거롭다.   AdHoc 배포 ('특별한 목적을 위해서'라는 뜻의 라틴어)기기의 UDID를..

Guide 2025.01.04

[Source | Java] DB 부하를 줄이기 위한 MyBatis 쿼리캐싱 기능

거의 바뀌지 않거나 고정된 값을 디비에서 자주 쿼리해야할 경우가 있다. 이때 마이바티스에서 제공하는 쿼리캐싱 기능 사용법을 알아보자.> 작성일 : 2021-04-06> 수정일 : 2025-01-02공식문서에 잘 설명이 되어있다.- https://mybatis.org/mybatis-3/ko/sqlmap-xml.html#cache  캐싱적용시 고려해야하는 사항들* flush / set 하는 시점을 명확히 정의 해야한다.--> 단순히 부하를 줄인다고 여기저기 사용했다가 갑자기 이상한 데이터로 에러가 발생할 수 있고 추적 또한 어렵다.* 마이바티스의 경우 쿼리 단위로 캐싱을 해줘 문제가 되지 않지만 Redis나 Memcached, ehcache등을 사용한다면 값저장시 키값을 잘 정의해야한다.--> 보통 키값에 ..

Source 2025.01.03

[Source | MySQL or MariaDB] 데이터베이스 생성 및 접속 설정

데이터 베이스를 MySQL / MariaDB로 선택하여 프로젝트를 진행할 경우 디비생성 및 접속권한을 부여하는 방법을 정리한다.> 작성일 : 2021-02-23> 수정일 : 2025-01-02 데이터베이스 생성create database {디비명} collate '{문자셋}';# Ex)create database ProjectDB collate 'utf8_general_ci'; 사용자 추가create user '{사용자ID}'@'{접속IP}' identified by '{비밀번호}';# Ex)create user 'opendocs'@'localhost' identified by 'passOpd'; 권한부여 및 적용# 권한부여grant all privileges on {디비명}.* to '{사용자ID}'@..

Source 2025.01.03

[Concept | Architecture] 3Tier

1티어 / 2티어 / 3티어의 개념과 장단점을 정리한다.> 작성일 : 2021-02-22> 수정일 : 2025-01-02시스템 설계시 프로젝트의 목적에 따라 물리적인 계층(Tier)을 나누고 서비스를 논리적(Layer)으로 분리하게 된다.효과적인 분업을 위해 반드시 이해가 필요한 부분이다.# Tier (계층) : 물리적인 분리단위 (서버 분리)# Layer (층) : 논리적인 분리단위 (기능 분리) 1Tier# 장점 : 구현이 간편함, 비용이 적게듬# 단점 : 확장이 힘듬, 이관시 재구성이 필요함, 분업이 어려움 2Tier# 장점 : 데이터관련 변경이 용이함# 단점 : 3Tier에 비해 유연성이 떨어짐 3Tier# 장점 : 다른계층에 의존하지 않으므로 분업시 효율적임# 단점 : 구현시 고려사항이 많아 비..

Concept 2025.01.02

[Concept | Encryption] 암호화 유형

암호화의 종류와 장단점과 시스템 개발에 어떤 유형이 적용되는지 정리한다.> 작성일 : 2017-03-04> 수정일 : 2025-01-02  암호화의 종류  단방향 암호화 - 해쉬함수① Encryption : 송신자는 해쉬함수를 이용해 평문을 암호화 한다.② Transmit : 암호문을 수신자에게 전송한다.③ Compare : 전송된 암호문과 저장된 암호문을 비교한다.※ 암호문을 복호화 하는것은 불가능하다. # 장점 - 암호화키를 사용하지 않으므로 공유절차 없이 보안을 유지할 수 있음# 단점 - 복호화가 필요한 경우에는 사용이 불가능함# 사용예 - 사용자 개인정보를 암호화 하여 디비에 저장하고 인증시 암호화된 값으로만 비교   양방향 암호화 대칭키 암호화 (비밀키 암호화)암호화 키를 생성하여 송신자(..

Concept 2025.01.02

[Concept | Encryption] 암호화의 기본개념

암호화의 기본적인 의미와 원리를 정리해보자.> 작성일 : 2017-03-01> 수정일 : 2025-01-02 사전적의미의 암호화암호화(encryption)란? 정보가 노출되는 것을 방지하기위해 특정 알고리즘을 이용하여 변형하는 것.암호화를 역행하여 다시정보를 읽게 하는 것은 복호화(decryption)라고 함.군사와 정부의 은밀한 대화를 위하여 오랫동안 이용되어 왔음.근래 기업에서는 데이터 전달 및 개인의 정보를 저장하는데 자주 이용함. 시스템 개발에서의 암호화보안이 필요한 정보를 특정 알고리즘을 통해 의미없는 문자열(이진수 덩어리)로 바꾸는 것.악의적인 목적으로 암호를 해독해 공격하는 것을 방지할 수 있음.보안에 있어 시스템적인 보호 방법 보다 근본적인 해결방법이라 할 수 있음. 암호화의 기본조건암호화..

Concept 2025.01.02

[Setting | Ubuntu] CI / CD 환경 구축하기 (3)

CI / CD 환경을 구축하기 위한 마지막단계 소스변경시 수행될 스크립트 작성성> 작성일 : 2025-01-02> OS : Ubuntu 22.04.5 LTS> Jeknins : v2.479.2젠킨스 설치 후 진행 - Link1단계 완료 후 진행 - Link2단계 완료 후 진행 - Link  Jenkins Pipeline script 작성# 젠킨스 빌드시 수행될 스크립트를 작성# Item > Configuration > Advanced Project Options# Definition : Pipeline script 선택 및 아래 입력pipeline { agent any stages { stage('Sync Source') { steps { ..

Setting 2025.01.01