权限
用户
每个用户都有对应ID(UID),至少归属于用户组(GID:同一用户组拥有相同的权利)。
查看id:id
查看Uid:groups
查看当前系统的用户:users
who //查看更多详细的信息
w //最详细信息
more
who的信息
第一列|第二列|第三列
--|--|--
登录的用户名|用户登录的终端|用户登录的时间(远程登录显示用户的ip或主机名)
w的信息
第一列|第二列|第三列|第四列|第五列|第六列|第七列|第八列
--|--|--|--|--|--|--|--
用户名|终端|网络登录时,显示主机名或ip地址|用户登录时间|用户闲置时间|与终端相关所
继续阅读 »
ngrok 可以将本地服务暴露到外网,解决了路由穿透, 80 端口封锁之类的问题。
more
外网能访问需要的条件
公网IP
运营商并没有给所有人提供了公网 IP, 如果在宿舍或者公司,这想都不敢想。
继续阅读 »
tomcat-redis-session-manager
用tomcat默认的方式来管理session是很有问题的,比如项目重启tomcat,用户会话就会丢失,这样用户体验非常糟糕。应用只要稍微上点规模或者需要多机负载,这是必须做的工作了。
web server自带解决方案有2:
tomcat有自带的session共享方式cluster,多个tomcat实时复制session。缺点是服务器之间会频繁的进行数据同步,如果在不同机器上网络开销会非常大,而且数据同步会有延迟的,这可能导致数据不一致,还有缺点就是session在每台机器都保有一份,太浪费资源了!
ngnix有基于ip hash转发的策略,用这个来保证每个IP每次
继续阅读 »
动机
pure functions 看似完美,但却不能模拟现实世界中的诸多任务。这是由于 pure functions 是良定的映射,对于特定的输入值会返回唯一的输出。这种模式在面对如下任务时会显得苍白无力:
有可能失败的任务。如大多数的 IO。
依赖外部状态的任务。如(伪)随机数生成器。
非确定性任务,即对于确定的输入可能有多个输出。这种在 IP 中较为少见。
对外界会造成影响的任务。如大多数的写入过程。
这些问题可以用数学中的域扩充技巧来解决。
域扩充
在数学中,当定义问题的范畴不足以容纳问题的解时,我们通常会对相关的范畴进行扩充。类似的技巧同样也可以应用在这里。
假设一个不良定的函数 f: A -> B:
如果 f
继续阅读 »
假设我们现在有这样一个任务,需要快速从 Nignx logs 中统计出访问量前10的 ip 及其访问次数。
以 github 上的nginx_logs 为例 (格式参考官方文档)
继续阅读 »
本文翻译自Cloud Academy。
AWS VPC最厉害的是它那令人难以置信的灵活性和安全性。亚马逊的VPC让你能够在它的独立虚拟网络中重新分配计算资源,例如EC2实例以及RDS部署,让你全权控制所有的进出流量。你还可以根据实际情况选择IP地址范围,子网集,路由表以及网络网关配置。一切尽在你的掌握之中。
继续阅读 »
1.简介
对于在网络上的比较小的结点,支持消息传输系统(MTS)是不实际的。例如,一台
工作站可能不具有充足的资源允许SMTP服务器和相当的本地邮件传送系统保持序驻留,
并持续运行。同样的,将一台个人计算机长时间连接在IP类型网络上的费用也是可观的
(结点缺少的资源被称为"联络性")。
虽然如此,在这样的小结点上允许管理邮件是十分有用的,并且这些结点经常支持一
个用户代理来管理邮件。为解决这一问题,能够支持MTS的结点就为这些不能支持的结点提
供了邮件存储功能。邮局协议-版本3就是使这样的工作站可以用一种比较实用的方法来访问
存储于服务器上的储存邮件。通常,这意味着工作站可以从服务器上取得邮件,而服务器为
它暂时保存邮件
继续阅读 »
本文主要介绍在ubuntu16.04上配置nvidia驱动、cuda和cudnn,我的操作系统是ubuntu 16.04.1 LTS Desktop 64bit,GPU型号是Tesla C2075(一款相对较老的GPU)。本文的组织结构如下:
1.准备工作
由于在安装显卡驱动的过程中可能会出现重启后在登录界面反复重复的问题,因此后面可能会使用命令行的方式进行进一步设置。建议通过网络ssh的方式访问机器,记下机器的ip,同时安装openssh-server。
sudo apt install openssh-server
同时需要将Intel自带的显卡功能禁用,这部分主要依靠在启动时修改BIOS,具体方法请google。然后检查
继续阅读 »
```python
!/usr/bin/env python
coding:utf-8
import MySQLdb
try:
#连接mysql的方法:connect('ip','user','password','dbname')
#conn=MySQLdb.connect(host='localhost',user='root',passwd='123456',db='test')
conn =MySQLdb.connect('127.0.0.1','root','123456',charset = 'gb2312')
conn.select_db('python')
cur
继续阅读 »
图解 HTTP
作为 Android 开发人员,HTTP 的相关知识是很重要的一块。《图解 HTTP》是我见过读起来最舒服的一本技术书籍,虽然不像《HTTP权威指南》,《TCP/IP详解》这两本网络圣经来得出名,但是对于不必深刻深入的初学者来说,《图解 HTTP》应该是为最适合的一本书籍。文中大量的图片重在让大家理解其中的原理内容,读起来毫不生涩,非常容易理解。
继续阅读 »