본문 바로가기
  • AI (Artificial Intelligence)

All633

javascript fetch 를 이용한 ajax 통신 및 주의점 팁/자료HTTP자바스크립트 fetch 란? fetch가 나오기전까진 자바스크립트에서 ajax을 쓰기란 매우 까다롭고 익스플로러랑 기타브라우저가 맞춰저 있지 않다보니 커먼라이브러로 만들어쓰거나 손쉽게 만들어져 있는 제이쿼리를 이용하였습니다. ajax이 처음 나오던 시절엔 사이트 전체에 극히 일부에서 사용하던 기술이었지만, 현재는 극단적으로 말해 SPA 처럼 ajax의 구성이 대부분인 사이트까지 있습니다. 그러다보니 새로운 표준이 필요했고 ES2015 쯤에 아래와 같이 공식 스펙으로 구현되었습니다. 참고: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch 형태 fetch(주소:string, 옵션); 옵션 상세 속성이름테스트3 met.. 2019. 10. 18.
영속성(Persistence)이란? 업무를 하다보면 동료가 영속성이란 말을 하는걸 들을 수 있습니다. 혹은 IT서적을 보다보면 영속성(Persistence)라는 단어가 종종 나오는것을 볼 수 있는데요. 과연 영속성(Persistence)이라는 것이 무엇인지 알아보겠습니다. 알고보면 별거 아닙니다. 아주 쉽습니다. 일단 아래 사전적 의미부터 보겠습니다. 영속 persistence : 고집 : (없어지지 않고 오랜동안) 지속됨 음… 뭔가 감이 오는것도 같은데 말이죠. 그럼 위키피디아에서는 뭐라고 하는지도 살펴 보겠습니다. 영속성(persistence)은 데이터를 생성한 프로그램의 실행이 종료되더라도 사라지지 않는 데이터의 특성을 의미한다. 영속성은 파일 시스템, 관계형 테이터베이스 혹은 객체 데이터베이스 등을 활용하여 구현한다. 영속성을 갖지.. 2019. 8. 23.
Apache Kafka(카프카)의 특징 및 모델 Apache Kafka Concept 지난번에는 Apache Kafka(이하 : 카프카)의 등장배경에 대해서 알아보았다. 이번 포스팅에는 카프카가 기존 메시징 시스템과 다른점은 무엇이고 또 어떠한 특징이 있는지 알아보겠습니다. 먼저 특징을 알아보고 그 다음에 모델을 살펴 보겠습니다. 특징 결론부터 말하면 특징은 아래와 같고 일단 특징을 나열한 후 각각의 특징에 대해서 알아보겠습니다. 분산 시스템으로 단일 시스템보다 높은 성능을 얻을 수 있다. 시스템 확장이 용이하다. OS에서 처리하는 페이지 캐시를 이용함으로써 속도가 빠르다. TCP 기반의 Protocol을 사용하여 오버헤드를 감소 시켰다. 배치 전송 처리를 한다. 메시지를 메모리에 저장하지 않고 파일 시스템에 저장한다. 메시지를 메모리에 저장하지 않고.. 2019. 8. 23.
Pub/Sub model Ref. https://medium.com/zaneiru-tech-life-blog/pub-sub-모델에-대해서-daa3c5c52aa8 메시징 시스템을 구현하기 위해 공부를 하다보면 Pub/Sub 모델이란 단어가 나옵니다. 물론 이 글을 읽는 사용자들은 스마트해서 단번에 이해했으리라고 생각합니다만 저는 그리 똑똑하지 않기에 Pub/Sub 모델에 대해서 정리해보려고 합니다. 언제나 그렇듯 초보자의 관점에서 글을 작성하니 이미 Pub/Sub 모델에 대해서 잘 알고 있는 유저라면 과감하게 뒤로가기 버튼을 눌러주기를 바랍니다. 사전적 기본 개념 메시징과 관련된 IT서적을 보면 보통 아래와 같은 설명으로 Pub/Sub 모델을 설명하고 있습니다. 메시지를 보내고 (Publish : 발행) 받는 (Subscribe .. 2019. 8. 23.
Mac OS에 MongoDB 설치 및 Robomongo 설치 MongoDB는 아래의 설명에서도 알수 있듯이 문서지향(Document-Oriented)의 cross-platform 데이터베이스이다. NoSQL 데이터베이스이며 JSON형식의 문서를 사용한다. 이번에 Scrapy를 이용한 뉴스 크롤링하기에서 크롤링한 뉴스기사들을 MongoDB에 저장하기 위해 MongoDB 설치를 포스팅하게 되었다. MongoDB (from humongous) is a free and open-source cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with schemas. MongoDB is developed .. 2019. 8. 16.
Synology NAS(IPsec) 시놀로지는 NAS를 주로 제작하는 대만 업체로 국내에서도 꽤나 유명한 업체입니다. 저는 2015년부터 DS415+ 모델을 사용하고 있습니다. 요즘 업그레이드 욕심이 나기는 하는데, 아직까지 성능의 부족함을 느낀 적은 없습니다. 그저 신제품이 가지고 싶을 뿐. 1베이 모델도 드물긴 하지만 있고, 2베이, 4베이 모델부터 랙 마운트용 NAS 장비도 갖추고 있습니다. 기회가 된다면 신형 4베이 제품에 32TB로 갖추고 싶네요. ㅎㅎ VPN? VPN은 Virtual Private Network의 약자로 가상 사설망을 뜻합니다. 주로 인트라넷 같은 사설망을 운영할 때 사용합니다. 저 같은 경우는 내부에서만 접근할 수 있는 개발용 서버 등을 사용하거나 해외에 있을 때 해외에서 접근이 안 되는 국내 사이트 접속시 I.. 2019. 8. 13.
HTTPS를 활성화하고 Synology NAS에서 인증서 서명 요청을 만드는 방법 개요 일부 상황에서는 HTTPS(Hypertext Transfer Protocol Secure)를 사용하여 Synology NAS와 다른 장치 간의 네트워크 통신을 암호화하고 보안을 적용함으로써, 정보 누출을 방지하고 메시지 가로채기 공격으로부터 보호할 수 있습니다. 네트워크 통신을 보호하려면 Synology NAS를 사용하여 자체 서명 인증서와 인증서 서명 요청(CSR)을 만들면 됩니다. 이 문서에서는 Synology NAS에서 HTTPS를 활성화하는 방법과 함께 인증서 서명 요청을 만드는 단계를 보여줍니다. 인증서 서명 요청은 타사 디지털 ID 인증서를 가져오는데 사용될 수 있습니다. 또한 Let's Encrypt를 사용하여 Synology NAS에서 HTTPS를 구성하는 방법에 대해서는 이 비디오 .. 2019. 8. 13.
VPN 보안 프로토콜 설명: PPTP 이해하기 많은 VPN 서비스는 PPTP를 보안 프로토콜을 제공합니다. 그런데 PPTP이 무엇인지 그리고 왜 중요한지 모르나요? 그렇다면 아래 내용을 확인하세요. 쾌적한 브라우징 전용의 VPN 프로토콜을 선택하는 것은 어렵습니다. 업계 최고의 속도를 자랑하는 프로토콜을 원한다면 PPTP가 제격입니다. PPTP란? PPTP는 무엇이고 무엇을 의미하나요? PPTP는 Point-to-Point Tunneling Protocol(지점간 터널링 프로토콜)의 줄임말입니다. 쉽게 말하자면 컴퓨터가 일련의 규칙을 따라서 서로 통신하는 언어입니다. 사용자는 이러한 통신 규칙을 사용해서 VPN 역할을 하는 공공 네트워크를 통해 “터널링”을 진행하여 개인 네트워크를 확장할 수 있습니다. 1999년에 생성된 PPTP는 가장 오래된 VP.. 2019. 8. 13.
Express API with autogenerated OpenAPI doc through Swagger In past years OpenAPI has arise as the preferred way to document APIs. In this article we will see how easy is document an API created with NodeJS and Express through the Swagger tools. If you are working in an REST API you more probably will desire to have some API doc where your users could find what are the endpoints of your API, what they do, which parameters they accept and which output the.. 2019. 8. 12.
Installing MongoDB on a Mac What’s MongoDB? MongoDB is a document database which belongs to a family of databases called NoSQL - not only SQL. In MongoDB, records are documents which behave a lot like JSON objects in JavaScript. Values in documents can be looked up by their field’s key. Documents can have some fields/keys and not others, which makes Mongo extremely flexible. This is different than SQL databases like MySQL .. 2019. 8. 9.
5-2 nodemon 와 supervisor 모듈 node.js에서 콘솔작업을 한다면 js 파일 수정할때마다 ctrl+c -> node 파일명.js 노가다를 해야 합니다. 글자 하나만 고쳐도 말이죠. 하지만 nodemon 과 supervisor 모듈은 해당 js 파일을 수정만 하면 자동으로 재실행해주는 너무나 고마운 모듈들입니다. 글보단 실습이죠! 1. 먼저 설치를 합니다. $ sudo npm install -g nodemon sudo npm install -g nodemon 2. 설치된 nodemon 최신 버전은 1.0.15 입니다. 3. 실행 방법은 간단합니다. js 파일 시작시 node 파일명.js 대신 nodemon 파일명.js 를 해주면 됩니다. nodemon 파일명.js 4. 만일 해당 js파일의 파일 변경이 감지되면 자동으로 리스타트 됩니다.. 2019. 8. 9.
How to Update Node.js to Latest Version (Linux, Ubuntu, OSX, Others) As with so many open-source technologies, Node.js is a fast-moving project. Minor updates come out every few weeks to boost stability and security among all version branches. Methods abound for updating Node on any operating system, so you don’t have an excuse to fall behind. We’ve compiled some of the simplest and most effective ways to install the newest version of Node on Linux-based, Windows.. 2019. 8. 9.
Node.js Express FrameWork Tutorial - Learn in 10 Minutes In this tutorial, we will also have a look at the express framework. This framework is built in such a way that it acts as a minimal and flexible Node.js web application framework, providing a robust set of features for building single and multipage, and hybrid web application. In this tutorial, you will learn- What is Express.js? Installing and using Express What are Routes? Sample Web server u.. 2019. 8. 9.
Istio Service Mesh, the Step-by-Step Guide, Part 2: Tutorial Welcome back! If you missed Part 1, you can check it out here. Getting Started With Istio Installing Istio on the Minikube Platform The best way to test Istio locally on Istio Kubernetes is through Istio Minikube. Microservices with Kubernetes service mesh and Docker should be used. To install Istio on Minikube, you would have to enable the following plugins at startup. Minikube start setup—extr.. 2019. 8. 8.
Mac OS X 메이븐설치 Homebrew를 이용한 메이블 설치명령어. brew install maven 2019. 8. 8.
Mac에서 Java 설치하기 (설치, 환경변수 설정) 1] 아래 링크에서 jdk 설치파일 다운 받기 http://www.oracle.com/technetwork/java/javase/downloads/index.html) [2] terminal 실행 [3] cd /Library/Java/JavaVirtualMachines [4] ls 명령어 실행 => 자바 버전 확인 (jdk1.8.0_161.jdk) [5] cd /Library/Java/JavaVirtualMachines/내가받은 자바버전에 맞는 jdk파일/Contents/Home/ => (cd /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/) [6] vi ~/.bash_profile [7] i 눌러서 편집모드 설정 들어가기 [8]exp.. 2019. 8. 7.
Ant, Maven, Gradle 이 뭘까? 스프링부트를 시작하며 자바 빌드도구인 Ant, Maven, Gradle에 대해 궁금해 졌다. (이번 글은 작성자 개인이 빌드 도구 각각에 대한 이해와특징을 알아보기 위해 작성된 것이다.) 웹/안드로이드 등등 프로그래밍 개발이 발전하며 프로젝트 생성에 필요한 라이브러리도 점점 많아지게 되었다. 이렇게 많아진 라이브러리를 직접 사이트에서 다운로드 받아 시스템에 추가하는 방법이 있지만 번거로움이 뒤따른다. 여기서 빌드도구(Build Tool)가 등장한다. 빌드도구란, 1)빠른 기간동안에 계속해서 늘어나는 라이브러리의 추가와 2)프로젝트를 진행하며 라이브러리의 버전을 동기화하기 어렵기 때문에 등장하였다. 초기의 JAVA 빌드 도구로 Ant라는 도구를 많이 사용하였으나 늘어나는 라이브러리를 관리하기 위해 Mave.. 2019. 8. 7.
Maven vs Gradle Maven vs Gradle 스프링 기반의 프로젝트를 시작하면서 Maven을 처음 접했다. Ant를 사용한적도 없었고 의존성 관리와 빌드 스크립트에 대한 지식도 없었기에 이런게 있나보다 하고 사용했었다. Maven 책을 한권 보고나서야 프로젝트 구성, 빌드툴이 무었인지 이해할 수 있었고, 편리한 의존성 관리에 감사하며 부족함을 느끼지 못했다. 하지만 프로젝트의 단위가 커지면서 빌드와 테스트에 소요되는 시간이 길어졌고, 여러 모듈에서 설정을 상속받기 시작하면서 Gradle이라는 녀석이 계속 눈에 뛰었다. Gradle이 Maven의 단점을 보완해주고 사용해본 사람들이 좋다고들 하니 Maven이랑 비교해서 얼마나 좋은지 알아보려 한다. Maven Apache의 이름 아래 2004년 출시 Ant를 사용하던 개발.. 2019. 8. 7.