[WIP] NextJS/ApolloJS/PassportJSBuild in Next JS for SSR, Apollo Client for GraphQL, Passport JS for authentication, Docker for development and production.
○ Docker
├─ ○ NodeJS
│ ├─ ○ NextJS
│ │ ├─ ./pages : /usr/app/pages
│ │ ├─ ./components : /usr/app/components
│ │ ├─ ./lib : /usr/app/lib
│ │ ├─ ./routes : /usr/app/routes
│ │ └─ ./server : /usr/app/server
│ │
│ ├─ ○ Apollo
│ │ └─ ./graphql : /usr/app/graphql
│ │
│ └─ ○ PassportJS
│ └─ ./providers : /usr/app/providers
│
├─ ○ Redis : redis://redis
│ └─ data : /data
│
└─ ○ MongoDB : mongodb://mongo/graphql
└─ data : /data/db
Redis
.GraphQL
types from Mongoose
with resolvers.node_modules
.email
/password
login.Copy from
.env.example
template and.env
as you wish
cp .env.example .env
# Will build and run then attach with docker compose (it take sometime for first build)
npm run up-dev
# Try modify files and see the HMR result
open http://localhost:3000
# Try modify file in ./graphql and see the result via GraphiQL
open http://localhost:3000/graphql
VSCode
and press F5 to attach
with nodejsChrome Dev Tool
# Will kill all and tear down
npm run down
# Will dive into container
npm run in
# Will pull image and run with docker compose (won't build)
npm run up
# Will need to run server for integration test (WIP)
npm run up-dev
# To test all with Jest
npm run test
# To see coverage
npm run cover
Facebook
from React Native.Facebook
from NextJS.facebook-token
with auth/facebook
user.facebook-token
with auth/email
user.Facebook
via React
web.README
as github page.Redis
fail test.MongoDB
fail test.graphql-compose
.Passport
test.MongoDB
replication docker exec -it node1 mongo --eval "rs.initiate()"
docker-compose -f docker-compose.yml -f production.yml up -d
lvm-direct
Redis
session store.SSH
.Nginx
TLS container : https://github.com/rabbotio/nginx-certbotNAP功能内置在Windows Server 2008和Windows Vista客户操作系统中,它增强了Windows Server 2003中“网络访问隔离控制”特性的功能。 一、NAP只是一项补充功能 NAP并不取代其他网络安全机制,它根本无法阻止未授权用户访问网络,而是帮助保护网络,远离通过未打补丁、配置不当或者未加保护的计算机连接到网络的授权用户带来的攻击和恶意软件。 二、NAP有两
现如今,令管理员非常头痛的一件事是如何确保网络的安全,其中如何保证接入私有网络的计算机符合健康策略更是耗费IT PRO们很多的精力,因为有很多计算机并不在管理员们的控制范围之内,如家庭计算机、出差用户、客户等笔记本,这些用户的计算机很可能没有及时安装关键补丁、没有启用防火墙、没有及时升级病毒库等,当他们接入公司内网的时候,势必给企业内网的安全性带来非常大的考验,NAP为Windows Server
在NAT网关上会有一张映射表,表上记录了内网向公网哪个IP和端口发起了请求,然后如果内网有主机向公网设备发起了请求,内网主机的请求数据包传输到了NAT网关上,那么NAT网关会修改该数据包的源IP地址和源端口为NAT网关自身的IP地址和任意一个不冲突的自身未使用的端口,并且把这个修改记录到那张映射表上。最后把修改之后的数据包发送到请求的目标主机,等目标主机发回了响应包之后,再根据响应包里面的目的IP
在IOS上,为了节能,在程序进入后台后会被杀掉,在OS X上也有类似的机制,称为App Nap。提供了3个API以便你来使用。 第一个用来检测你的程序处于何种状态,这个方法会在应用程序的可见性发生改变时被调用。写在AppDelegate里。 func applicationDidChangeOcclusionState(notification: NSNotification) { if
NAT NAT的实现方式有三种,即静态转换Static Nat、动态转换Dynamic Nat和端口多路复用OverLoad。 静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。 动态转换是指将内部网络的私有IP地址转换为公用IP地址时,I
NAPI 的核心在于:在一个繁忙网络,每次有网络数据包到达时,不需要都引发中断,因为高频率的中断可能会影响系统的整体效率,假象一个场景,我们此时使用标准的 100M 网卡,可能实际达到的接收速率为 80MBits/s,而此时数据包平均长度为 1500Bytes,则每秒产生的中断数目为: 80M bits/s / (8 Bits/Byte * 1500 Byte) = 6667 个中断 /s
什么是NAPI NAPI 是 Linux 上采用的一种提高网络处理效率的技术,它的核心概念就是不采用中断的方式读取数据,而代之以首先采用中断唤醒数据接收的服务程序,然后 POLL 的方法来轮询数据。 为什么使用NAPI 中断缓和 (Interrupt mitigation)。在日常使用中,网卡产生的中断可能达到每秒几千次,而如果每次中断都需要系统来处理,是一个很大的压力,而 NAPI 使用轮询时是
描述: 说明这已不再是首选方法。 Syntax(语法) @deprecated [<some text>] Overview(概述) @deprecated 标签指明一个标识在你代码中已经被弃用。 Examples(例子) 您可以单独使用的@deprecated标签,或包括一些文本,来详细说明为什么要弃用。 例如,描述一个old函数从2.0版本开始已经被弃用: /** * @deprecated
This project is deprecated in favor of https://vapperjs.org Install yarn add ream Usage Unlike a regular Vue SPA, you must export a function which returns an object in your app entry in order to make
Enemy Territory: Legacy A second breath of life for Wolfenstein: Enemy Territory Website: https://www.etlegacy.com Downloads: https://www.etlegacy.com/download Wiki/FAQ: https://dev.etlegacy.com/proje
我们的业务目前正在探索Vercel,以部署我们用React编写的新登录页 项目组织如下(概念上): > /src/pages/_应用程序。tsx:导入css(也使用tailwind)并将应用程序包装到IconContext中。提供者(用于图标) ./src/page/index.tsx:导出(默认)组件,它使用内部反应组件来呈现/钩子来处理逻辑 我们已经花了几个小时调试这个问题,但仍然不知道错误在
This plugin is deprecated and will be removed in the next major release. Overview Quick setup Available options Live examples Overview The headerTooltips plugin allows adding tooltips to the table hea
Global pcap_lookupdev 用 pcap_findalldevs() 或 pcap_findalldevs_ex() 代替 Global pcap_lookupnet 用 pcap_findalldevs() 或 pcap_findalldevs_ex() 代替 Global pcap_file 由于用来编译WinPcap的C运行环境(C Runtime,CRT)和被WinPcap