목록전체 글 276
재밌고 어려운 IT를 이해해보자~!
stgreSQL은 관계형 DBMS의 기본적인 기능인 트랜잭션과 ACID(Atomicity, Consistency, Isolation, Durability)를 지원 PostgreSQL의 특징 Portable- PostgreSQL은 ANSI C로 개발되었으며, 지원하는 플랫폼의 종류로는 Windows, Linux, MAC OS/X, Unix 등 다양한 플랫폼을 지원Reliable- 트랜잭션 속성인 ACID에 대한 구현 및 MVCC- 로우 레벨 라킹 등이 구현Scalable- PostgreSQL의 멀티 버젼에 대해 사용이 가능- 대용량 데이터 처리를 위한 Table Partitioning과 Tables Space 기능 구현이 가능Secure- DB 보안은 데이터 암호화, 접근 제어 및 감시의 3가지로 구성됨..
ExtJS란 UI 컴포넌트를 지원하는 Javascript Framework 이다.잘 알려진 Javascript Framework로는 Angular js와 React가 있다!. 대표적으로 지원하는 컴포넌트는 3가지- Grid- Chart- Tree Ext JS는 MVC / MVVM 아키텍처를 기반Ext JS 6의 최신 버전은 플랫폼마다 다른 코드가 없어도 데스크탑 및 모바일 애플리케이션 모두에 사용할 수있는 단일 플랫폼이다. 장점 그리드, 피벗 그리드, 폼, 차트, 트리와 같은 풍부한 UI를 수집하여 사용자 정의 가능한 UI 위젯새 버전과 이전 버전의 코드 호환성유연한 레이아웃 관리자를 사용하면 여러 브라우저, 장치 및 화면 크기에서 데이터 및 콘텐츠 표시를 구성 가능사전 데이터 패키지는 UI 위젯과 데이..
PHP란? PHP는 ‘Personal Home PagE Tools’의 약자로 웹사이트 제작에 특화된 백엔드(서버) 언어이다.동적인 웹페이지를 만들기 위해 설계가 된 언어 데이터들을 사용자의 웹페이지로 전달하여 화면에 보여주기 때문에 필요한 단계에 따라 서버 언어를 활용하여 달라진 웹페이지가 구현되도록 소스를 제공받게 되는 것 정적으로 미리 저장된 파일이 그대로 전달되어 구현된 HTML의 코드 내부 안에 동적인 기능이 구현 가능한 PHP 코드를 넣어 웹페이지의 기능들을 실행할 수 있다. PHP의 가장 큰 특징은 빠른 생산성과, 저렴한 유지 비용!PHP를 활용한 웹 사이트 운영에 가장 최적화된 방식은 리눅스(Linux)+아파치(Apache)+MySql+PHP의 조합으로 많이 사용 호스팅과 도메인 정도만 구..
Redis란?Redis는 캐시 시스템으로서 동일한 기능을 제공하면서 영속성, 다양한 데이터 구조와 같은 부가적인 기능을 지원한다.레디스는 모든 데이터를 메모리에 저장하고 조회한다.즉, 인메모리 데이터베이스 입니다. 이 말만 들으면 Redis에 모든 데이터를 메모리에 저장하는 빠른 DB가 다라고 생각할지도 모릅니다. 하지만 빠른 성능은 레디스의 특징 중 일부분 이다.다른 인메모리 디비들과의 가장 큰 차이점은 레디스의 다양한 자료구조이다.다양한 자료구조 지원으로 개발의 편의성이 좋아지고 난이도가 낮아진다! NoSQL로서 Key-Value 타입의 저장소인 레디스(Redis, Remote Dictionary Server)의 주요 특징영속성을 지원하는 인메모리 데이터 저장소읽기 성능 증대를 위한 서버 측 복제를..
JPA는 자바 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용되는 인터페이스의 모음그 말은 즉, 실제적으로 구현된것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크 ORM이란? ORM(Object-Relational Mapping) 우리가 일반 적으로 알고 있는 애플리케이션 Class와 RDB(Relational DataBase)의 테이블을 매핑(연결)한다는 뜻이며, 기술적으로는 어플리케이션의 객체를 RDB 테이블에 자동으로 영속화 해주는 것 장점 1. SQL문이 아닌 Method를 통해 DB를 조작할 수 있어, 개발자는 객체 모델을 이용하여 비즈니스 로직을 구성하는데만 집중가능2. Query와 같이 필요한 선언문, 할당 등의 부수적인 코드가 줄어들어,..
지금까지 IT 업계는 경계 보안 전략 에 따라 사용자 데이터와 지적 재산과 같은 가장 귀중한 리소스를 보호해 왔다.이러한 보안 전략은 네트워크에 들어오고 네트워크에서 나가는 사용자를 검사 및 확인하기 위해 방화벽 및 기타 네트워크 기반 도구를 사용한다. 그러나 이러한 경계 보안 모델은 기업망에서만 근무하던 환경에서는 적합할 수 있지만 재택근무 확대, 업무환경의 다변화(스마트 워크플레이스 등)로 인해 경계 보안 모델의 한계성과 취약성 이슈가 대두되며, 디지털 혁신과 하이브리드 클라우드 인프라를 향한 이동 때문에 산업들이 사업을 수행하는 방식이 변하고 있습니다. 네트워크 경계에 의존하면 더 이상 충분하지 않다. 제로 트러스트는 일체의 사용자와 프로세스를 신뢰하지 않는다는 원칙 하에 모든 사용자와 디바이스,..
젠킨스는 소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 툴!CI(Continuous Integration) 툴이다.다수의 개발자들이 하나의 프로그램을 개발할 때 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유영역에 있는 저장소에 빈번히 업로드함으로써 지속적 통합이 가능하도록 해준다. 젠킨스와 같은 CI툴이 등장하기 전에는 일정시간마다 빌드를 실행하는 방식이 일반적이었다. 특히 개발자들이 당일 작성한 소스들의 커밋이 모드 끝난 심야 시간대에 이러한 빌드가 타이머에 의해 집중적으로 진행되었는데, 이를 nightly-build라 했었다. 젠킨스는 정기적인 빌드에서 한발 나아가 서브버전, Git 과 같은 버전관리시스템과 연동하여 소스의 커밋을 감지하면 자동적으로 자동화 테스트가 포함된 빌드가 작동되도..
데브옵스(DevOps)란? Development에서 DEV를, 운영을 뜻하는 Operations에서 OPS를 가져왔다. 단순한 개발과 운영의 통합이 아니며, 하나의 언어나 기술을 뜻하는 것도 아니며, 개발과 운영이 가지는 간극을 줄이는 시도로써 하나의 문화이자 방법론 DevOps는 기존의 개발과 운영 사이의 경계를 허물고 개발자와 운영팀 간의 소통과 협력을 강화하여 더 빠르고 안정적인 소프트웨어 개발과 배포를 이끌어낸다. DevOps를 위해 CI/CD파이프라인을 구축하는 것 같다! DevOps는 자동화를 통해 반복적이고 기계적인 작업들을 자동으로 처리하여 인간의 실수를 최소화하고 작업 효율성을 향상시키는데, 자동화된 테스트는 코드의 안정성과 신뢰성을 검증하며 지속적인 통합과 지속적인 배포를 통해 신규 코..