일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Babel
- Redis
- mariadb
- CentOS
- nginx
- phpredis
- Backbone.js
- python
- nodejs
- Redux
- Node
- php
- React
- javascript
- deep learning
- linux
- Machine Learning
- SQL
- rabbitmq
- webpack
- docker
- laravel
- Go
- For
- AWS
- fastapi
- NCP
- Switch
- 기초 수학
- 블레이드 템플릿
- Today
- Total
목록전체 글 (189)
개발일기
1. erlang설치 RabbitMQ는 erlang이라는 언어로 만들어졌기에 먼저 erlang을 설치해야 한다. wget https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm rpm -Uvh erlang-solutions-2.0-1.noarch.rpm yum install erlang -y wget을 통해 erlang 패키지를 다운로드 한 후, erlang을 설치한다. 2. RabbitMQ 설치 wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.8/rabbitmq-server-3.8.8-1.el6.noarch.rpm wget으로 RabbitMQ 패키지를..
RabbitMQ의 연결, 채널, 큐 등을 관리하고 모니터링하기 위해 RabbitMQ Management Plugin을 사용한다. 채널을 관리하기 위해 채널 탭을 클릭했을 때, 'Stats in management UI are disabled on this node' 라는 내용이 있는 모달창이 나오며 채널 목록이 안나오는 경우가 있다. 해결법 vi /etc/rabbitmq/conf.d/management_agent.disable_metrics_collector.conf nano /etc/rabbitmq/conf.d/management_agent.disable_metrics_collector.conf management_agent.disable_metrics_collector.conf 파일을 편집기를 통해 ..
find와 grep은 리눅스 파일 시스템에서 일치하는 컨텐츠를 찾아내는 공통점을 가지고 있다. 하지만 find와 grep은 타겟팅하는 컨텐츠에 큰 차이점을 가지고 있다. find : 이름을 기반으로 일치하는 파일 또는 디렉터리를 찾아낸다. grep : 해당 텍스트를 포함한 파일을 찾아낸다. 1. find 명령어 find [경로] [옵션] [이름] # 이러한 순서로 find 명령어를 입력하여 실행한다. find / -name "resources" # resources라는 이름을 가진 파일 또는 디렉터리를 찾아낸다. find / -type -f -name "fruit.log" # fruit.log라는 이름을 가진 파일을 찾아낸다. find / -type -d -name "public" # public이라는 ..
Backbonejs는 SPA 방식으로 처음 페이지를 서버에서 불러온 후, 이후에 변경되는 페이지 내 요소들은 클라이언트를 통해 부분 요소만 그려낼 수 있다. 이러한 방식을 사용하면 서버에 주는 부담을 최소화 할 수 있으며 최소한의 새로고침으로 사용자들이 해당 웹을 이용할 때, 자연스럽고 빠른 성능의 화면 변경 요소를 확인할 수 있다. SPA 방식으로 검색 페이지를 구현하고 검색 결과를 공유하기 위해 다른 사용자에게 URL를 공유하면 검색 결과가 나온 페이지가 아닌 검색을 처음부터 진행해야하는 페이지가 불러와지는 것을 확인할 수 있다. SPA 방식이지만 다른 사용자에게 공유할 수 있는 URL을 Backbonejs의 Router로 생성하여 공유할 수 있다. 1. Backbonejs의 Router // ind..
1. on() 이벤트 import Backbone from 'backbone'; const FruitModel = Backbone.Model.extend({ defaults: { name: 'melon', price: 5000 } }); const fruitModel = new FruitModel(); fruitModel.set({ name: 'water melon', price: 20000 }); // 속성 변경 fruitModel.on('change', function(e) { // 모델 속성 변경 이벤트 console.log(e.toJSON()); }); on() : 모델에 발생하는 이벤트에 따라 콜백함수를 연결해주는 메서드이다. 여기서 과일 모델의 속성을 이름은 수박, 가격을 2만원으로 수정하면 ..
1. Collection에 Model 추가 import Backbone from 'backbone'; const FruitModel = Backbone.Model.extend({ defaults: { id: '', name: '', price: '' } }); const FruitCollection = Backbone.Collection.extend({ model: FruitModel }); // 컬렉션 생성 const fruitCollection = new FruitCollection(); // 객체 생성 fruitCollection.add({ id: 'mangoId', name: 'mango', price: 1000 }); // 모델 추가 fruitCollection.add({ id: 'orangeI..
1. View 객체 생성 및 메서드 import Backbone from 'backbone'; const FruitView = Backbone.View.extend({ el: "#backbone-view", // 렌더링할 DOM 요소 template: "Orange Yummy!", // 템플릿 initialize: function() { // 초기화 메서드 console.log('view init'); }, render: function() { // 렌더링 메서드 this.$el.html(this.template) } }); const fruitView = new FruitView(); // 객체 생성 Backbone.View.extend({ }); 를 통해 뷰를 생성할 수 있다. 뷰를 생성한 후, ne..
1. 모델 객체 생성 import Backbone from 'backbone'; const FruitModel = Backbone.Model.extend({ defaults: { name: 'mango', price: '1000', } }); // 모델 생성 const fruitModel = new FruitModel(); // 모델 객체 생성 Backbone.Model.extend({ }); 를 통해 모델을 생성할 수 있다. 모델을 생성한 후, new 연산자를 사용하여 모델 객체를 생성하여 사용한다. 2. 모델 속성 추가 및 출력 import Backbone from 'backbone'; const FruitModel = Backbone.Model.extend({ defaults: { name: 'ma..