- Download docker-compose.yml to dir named
sentry
- Change SENTRY_SECRET_KEY to random 32 char string
- Run
docker-compose up -d
- Run
docker exec -it sentry_sentry_1 sentry upgrade
to setup database and create admin user - Run
docker exec -it pip install sentry-slack
if you want slack plugin, it can be done later - Run
docker restart sentry_sentry_1
- Sentry is now running on public port 9000
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<ion-header> | |
<ion-toolbar color="secondary" [class.show-background]="showToolbar"> | |
<ion-buttons slot="start"> | |
<ion-menu-button></ion-menu-button> | |
</ion-buttons> | |
<ion-buttons slot="end"> | |
<ion-button> | |
<ion-icon slot="icon-only" name="logo-facebook"></ion-icon> | |
</ion-button> |
用例子讲解 RxJS 5 的 Operators 。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import {TranslateLoader} from "ng2-translate/ng2-translate"; | |
import {Observable} from "rxjs/Observable"; | |
import fs = require('fs'); | |
export class TranslateUniversalLoader implements TranslateLoader { | |
constructor(private prefix: string = 'i18n', private suffix: string = '.json') {} | |
/** | |
* Gets the translations from the server | |
* @param lang |
本文基本上这为两篇文章的翻译和整合 -- Scalable networking And Why are event-driven server so great
传统服务器模型如Apache为每一个请求生成一个子进程。当用户连接到服务器的一个子进程就产生,并处理连接。每个连接获得一个单独的线程和子进程。当用户请求数据返回时,子进程开始等待数据库操作返回。如果此时另一个用户也请求返回数据,这时就产生了阻塞。
这种模式在非常小的工作负荷是表现良好,当请求的数量变得太大是服务器会压力过于巨大。 当Apache达到进程的最大数量,所有进程都变得缓慢。每个请求都有自己的线程,如果服务代码使用PHP编写时,每个进程所需要的内存量是相当大的[1]。