所有由霜月发布的文章

Nginx 查看并发连接数

netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a,S[a]}’

 

 

 

//屏蔽单个ip访问

 

deny IP;

 

//允许单个ip访问

 

allow IP;

 

//屏蔽所有ip访问

 

deny all;

 

//允许所有ip访问

 

allow all;

 

//屏蔽整个段即从123.0.0.1到123.255.255.254访问的命令

 

deny 123.0.0.0/8

 

//屏蔽IP段即从123.45.0.1到123.45.255.254访问的命令

 

deny 124.45.0.0/16

 

//屏蔽IP段即从123.45.6.1到123.45.6.254访问的命令

 

deny 123.45.6.0/24

 

//如果你想实现这样的应用,除了几个IP外,其他全部拒绝,

//那需要你在guolv_ip.conf中这样写

 

allow 1.1.1.1;

allow 1.1.1.2;

deny all;

 

/data/nginx/sbin/nginx -t
/data/nginx/sbin/nginx -s reload

一次网站故障的排除

先说下运行环境:

OS:winserve2012

DB:SQLSERVER

IIS+ASP.NET

最近某网站愈来愈慢,经咨询给出的回复是说网站缓存文件太多导致,需要删除缓存.

@ECHO OFF

iisreset /stop

Echo Deleting x86 Temporary ASP.NET Files

for /d %%i in (“%systemroot%\Microsoft.Net\Framework\v*”) do for /d %%f in (“%%i\Temporary ASP.NET Files\*”) do RD /q/s “%%f”

Echo Deleting x64 Temporary ASP.NET Files
for /d %%i in (“%systemroot%\Microsoft.Net\Framework64\v*”) do for /d %%f in (“%%i\Temporary ASP.NET Files\*”) do RD /q/s “%%f”

iisreset /start

@ECHO ON

操作后,刚开始有效果,后来有效时间越来越短,说明没对症,有联系了不靠谱的网站公司,回应说生成的静态文件也需要删除,由于海量的静态文件生成在一个文件夹中,系统的IO达到瓶颈,听着像是那么回事,于是增加批量删除静态文件操作.但是收效甚微.所以考虑没有找到问题所在,唯一的特征是重启IIS后会快很多.由此出发,重启IIS时,会释放所有的TCP连接,重启应用池.

首先 netstat-ano, IIS刚重启好和网站卡的时候,区别是增加了很多处理close_wait的连接,而且本地应用是HTTP,端口80,初步怀疑是程序的连接没有正常关闭,占用了大量系统资源,导致后续的出先等待.

所以解决方案一.是增大TCP连接数(server2012 默认值为5000),用tcpview发现总连接没有超过500,所以应该不需要增加默认连接数,如果要修改

修改最大TCP连接端口数(MaxUserPort)限制,修改方法:在注册表HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters中添加名为MaxUserPort,类型为DWORD(32-bit),值为65543(10进制)的项目并重启计算机。

方案二,强制关闭等待的连接,(持续观察中)

查询指定时间段内的工作日

SELECT dbo.IT_T_WORKDAY(‘2017-01-12′,’2018-01-12’,”)

 

ALTER FUNCTION [dbo].[IT_T_WORKDAY]

–指定日期范围内工作日. by lzp
(
@sdate varchar(50),
@edate varchar(50),
@str VARCHAR(5000)
)
RETURNS VARCHAR(5000)
AS
BEGIN

SELECT @str=COUNT(*) FROM (SELECT t.yyyymmdd
FROM ( SELECT CONVERT (CHAR(10), DATEADD(dd, number, @sdate), 120) AS yyyymmdd,
DATEPART(dw, CONVERT (CHAR(10), DATEADD(dd, number, @sdate), 120)) wn
FROM master.dbo.spt_values AS spt
WHERE type = ‘p’
AND CONVERT (CHAR(10), DATEADD(dd, number, @sdate), 120) < = @edate ) t
WHERE t.wn IN ( 2, 3, 4, 5, 6 )
AND t.yyyymmdd NOT IN ( SELECT HDAY
FROM dbo.IT_T_HDAY )
UNION
SELECT td.TDAY
FROM dbo.IT_T_TDAY td
WHERE td.TDAY >= @sdate
AND td.TDAY <= @edate) t WHERE 1=1

RETURN @str
END

 

 

 

 

/*
Navicat SQL Server Data Transfer

工作日休假表

Target Server Type : SQL Server
Target Server Version : 105000
File Encoding : 65001

Date: 2018-01-26 10:59:35
*/

— —————————-
— Table structure for IT_T_HDAY
— —————————-
DROP TABLE [dbo].[IT_T_HDAY]
GO
CREATE TABLE [dbo].[IT_T_HDAY] (
[ID] int NOT NULL ,
[HDAY] date NULL ,
[REMARK] varchar(50) NULL
)

GO

— —————————-
— Indexes structure for table IT_T_HDAY
— —————————-

— —————————-
— Primary Key structure for table IT_T_HDAY
— —————————-
ALTER TABLE [dbo].[IT_T_HDAY] ADD PRIMARY KEY ([ID])
GO

 

 

 

/*
Navicat SQL Server Data Transfer

周末调休表

Target Server Type : SQL Server
Target Server Version : 105000
File Encoding : 65001

Date: 2018-01-26 10:59:54
*/

— —————————-
— Table structure for IT_T_TDAY
— —————————-
DROP TABLE [dbo].[IT_T_TDAY]
GO
CREATE TABLE [dbo].[IT_T_TDAY] (
[ID] int NOT NULL ,
[TDAY] date NULL ,
[REMARK] varchar(50) NULL
)

GO

— —————————-
— Indexes structure for table IT_T_TDAY
— —————————-

— —————————-
— Primary Key structure for table IT_T_TDAY
— —————————-
ALTER TABLE [dbo].[IT_T_TDAY] ADD PRIMARY KEY ([ID])
GO

 

 

 

 

IQSYS/framework

科技改变生活

当前科技越来越发达,没有什么事情是不能通过一行代码来解决的,如果真有,那就用两行代码

https://github.com/wangshub/wechat_jump_game

 

顺:

灯塔在线  自动答题实现思路

手机安装灯塔APP,通过ADB连接PC,获取当前屏幕截图,通过OCR获取内容并到题库中查出答案,然后输入到APP界面.

 

 

面朝大海,春暖花开

面朝大海,春暖花开
            --海子
从明天起,做一个幸福的人
喂马、劈柴,周游世界 
从明天起,关心粮食和蔬菜 
我有一所房子,面朝大海,春暖花开
从明天起,和每一个亲人通信 
告诉他们我的幸福 
那幸福的闪电告诉我的
我将告诉每一个人
给每一条河每一座山取一个温暖的名字 
陌生人,我也为你祝福 
愿你有一个灿烂的前程 
愿你有情人终成眷属
愿你在尘世获得幸福
我只愿面朝大海,春暖花开
1989.1.13