线上图片下载服务器平时运行正常,最近突然出现一种比较奇怪的现象,只接受请求,但却没有处理请求,最开始怀疑下载线程挂掉了,dump 项目线程后发现异常: "pool-2-thread-1" prio=10 tid=0x00007f7fbc7c5000 nid=0x4e9 runnable [0x00007f800a05e000]   java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Nat…
解决关键SSL安全问题和漏洞 SSL(安全套接字层)逐渐被大家所重视,但是最不能忽视的也是SSL得漏洞,随着SSL技术的发展,新的漏洞也就出现了,下面小编就为大家介绍简单七步教你如何解决关键SSL安全问题和漏洞   SSL(安全套接字层)广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输,以保障在Internet上数据传输之安全.下面小编将为大家探讨新的SSL安全形势以及新的安全问题. 下面让我们来了解这些SSL安全问题以及可帮助信息安全专业人员解决这些问题及安全部署SSL的七个步骤.…
[译]async/await中使用阻塞式代码导致死锁 这篇博文主要是讲解在async/await中使用阻塞式代码导致死锁的问题,以及如何避免出现这种死锁.内容主要是从作者Stephen Cleary的两篇博文中翻译过来. 原文1:Don'tBlock on Async Code 原文2:why the AspNetSynchronizationContext was removed 示例代码:async_await中使用阻塞式代码导致死锁.rar 一.async/await 异步代码运行流程 a…
在CSDN中发现这篇文章,讲解的比较详细,所以在这里备份一个.原文链接:http://blog.csdn.net/breaksoftware/article/details/8167641 DllMain的相关特性 首先列出<DllMain中不当操作导致死锁问题的分析--进程对DllMain函数的调用规律的研究和分析>中论证的11个特性:  Dll的加载不会导致之前创建的线程调用其DllMain函数. 线程创建后会调用已经加载了的DLL的DllMain,且调用原因是DLL_THREAD_ATT…
WPF 中为了 UI 的跨线程访问,提供了 Dispatcher 线程模型.其 Invoke 方法,无论在哪个线程调用,都可以让传入的方法回到 UI 线程. 然而,如果你在 Lazy 上下文中使用了 Invoke,那么当这个 Lazy<T> 跨线程并发时,极有可能导致死锁.本文将具体说说这个例子. 本文内容 一段死锁的代码 此死锁的触发条件 此死锁的原因 此死锁的解决方法 更多死锁问题 一段死锁的代码 请先看一段非常简单的 WPF 代码: private Lazy<Walterlv>…
AutoResetEvent.ManualResetEvent.Monitor.lock 等等这些用来做同步的类,如果在异步上下文(await)中使用,需要非常谨慎. 本文将说一个在同步上下文中非常常见的一种用法,换成异步上下文中会产生死锁的问题. 本文内容 一段正常的同步上下文的代码 一个微调即会死锁 此死锁的触发条件 此死锁的原因 更多死锁问题 一段正常的同步上下文的代码 先看看一段非常简单的代码: private void OnLoaded(object sender, RoutedEve…
原文:[译]async/await中使用阻塞式代码导致死锁 这篇博文主要是讲解在async/await中使用阻塞式代码导致死锁的问题,以及如何避免出现这种死锁.内容主要是从作者Stephen Cleary的两篇博文中翻译过来. 原文1:Don'tBlock on Async Code 原文2:why the AspNetSynchronizationContext was removed 示例代码:async_await中使用阻塞式代码导致死锁.rar 一.async/await 异步代码运行流…
会话对象 前面我们使用了添加cookie的方式来进行接口的访问,如果有几十个接口都要依赖登录,难道我们都要加上吗? Request的会话对象让你能够跨请求保持某些参数,它也会在同一请求Session实例发出的所有请求之间保持Cookie import requests base_url = 'http://httpbin.org' s = requests.Session() # 设置Cookie r = s.get(base_url + '/cookies/set/user/zou') pri…
httpclient这个工具类对于大家来说应该都不陌生吧,最近在使用过程中出现了碰到一个棘手的问题,当请求的接口地址由http变成https之后,程序执行到 httpClient.execute(httpPost);的时候经常会卡死(程序无响应),这个问题的根本原因是第三方接口一直没有返回数据 程序需要收到反馈才能进行下一步操作,这也直接导致程序一直处于卡死状态. 百度了很多资料,基本都是说设置下超时时间就可以 但是问题还是没有得到解决,,,,, 最后本人想到一个解决办法,将调度方法单独放在线程…
阿里云ssl证书过期怎么解决(免费SSL证书),三步解决 使用免费的SSL证书网站  https://ohttps.com 1.注册帐号 2.申请证书 3.部署到阿里云 4.注意事项 1.注册帐号 到 https://ohttps.com 注册帐号 并登陆 点击创建证书 2.申请证书 输入自己的域名以*开头如 www.fuckalyssl.com  输入: *.fuckalyssl.com 配置DNS授权模式,AccessKey ID 及 AccessKey Secret 获取方式 查看这里:…
找到问题的原因后于是换个思路,想大概修复了python,Ubuntu进入桌面应该也就没啥问题了.于是重新安装Python发现还是无济于事.也通过/usr/bin/python: can't find '__main__.py' in '/usr/share/command-not-found'去google搜索(百度等根本搜不到),着上面的方案去做发现还是不行,折腾了一天.后来想到直接去帖请教,最终得到了帮助,一条命令砸下去问题搞定.真是神了!命令如下,该条命令也就是让你重装Ubuntu: su…
最近在折腾POP3协议,登陆pop.qq.com和pop.163.com没有什么问题,于是就想着登陆pop.gmail.com,结果失败了.经查,发现gmail的pop3端口不是110,而是995.于是改了端口,但是登陆还是失败了.后面查了资料,发现原来是gmail采用的是ssl验证,不能直接连接.那C#要如何实现SSL连接呢?查了很多资料后,发现可以通过SslStream来实现. 下面是SslStream实现连接的代码 private StreamReader pop3StreamReader…
前言: 话说昨晚还是前晚,写了一篇:讲述Sagit.Framework解决:双向引用导致的IOS内存泄漏(上) 文章写到最后时,多了很多莫名奇妙的问题!!! 为了解决了这些莫名奇妙的问题,我又战斗了24小时〜〜〜 然后终于解决了问题,原来是IOS的隐藏性Bug,只想恨恨的说一声fuck~~~ 故事起源: 故事是这样的,为了处理内存释放的问题,正常人的思维,都是给对象的dealloc增加日志输出. 于是,UIView.UIViewController和两个Sagit定义的基类STView.STCo…
前言: 在处理完框架内存泄漏的问题后,见上篇:讲述Sagit.Framework解决:双向引用导致的IOS内存泄漏(中)- IOS不为人知的Bug 发现业务代码有一个地方的内存没释放,原因很也简单: 在block里用到了self,造成双向引用,然后就开始思考怎么处理这个问题. 常规则思维,就是改代码,block不要用到self,或只用self的弱引用. 只是框架这里特别,有一个特好用的系列,STLastXXX系列,是用宏定义的,而且该宏指向了self. 这么好用的STLastXXXX宏定义系列,…
解决AngualrJS页面刷新导致异常显示问题 绪 俗话说,细节决定成败,编程亦是如此.编程过程中我们可能会不自觉的忽视一些细节问题,殊不知,这些细节正是导致页面显示出现问题的地方.今略举一例,与君共勉之. 页面正常加载后,显示如下: 按F5刷新之后,页面如下所示: 很明显,页面显示出现了异常.回过头再看看Chrome的错误提示, 具体代码如下: 正是以上代码导致了错误的发生. 追根溯源 让我们回顾一下,错误到底是如何发生的.正常加载情况下,页面正常显示很容易理解,程序是按照既定的数据流走的.但…
在定时脚本运行过程中,发现当备份表格的sql语句与删除该表部分数据的sql语句同时运行时,mysql会检测出死锁,并打印出日志. 两个sql语句如下: (1)insert into backup_table select * from source_table (2)DELETE FROM source_table WHERE Id>5 AND titleWeight<32768 AND joinTime<'$daysago_1week' teamUser表的表结构如下: PRIMARY…
IP代理:import requests url='https://weibo.com/' proxies={ 'http':'116.196.66.197:99999' } # 此处的proxies即为代理,里面的参数为代理ip,到百度搜索‘代理ip’即可获取 response=requests.get(url,proxies=proxies) content=response.content.decode("gbk") print(content) ssl验证设置: import…
[20180801]insert导致死锁.txt --//链接http://www.itpub.net/thread-2104135-2-1.html的讨论,自己有点疏忽了,插入主键相同也会导致死锁.--//自己按照链接http://www.xifenfei.com/2011/05/insert%E5%BC%95%E8%B5%B7%E7%9A%84%E6%AD%BB%E9%94%81.html--//自己测试看看: 1.环境:SCOTT@test01p> @ ver1PORT_STRING   …
转载自: 完美解决Error:SSL peer shut down incorrectly 打开gradle文件夹下的gradle-wrapper文件 修改其中的配置文件将红色区域修改为http://services.gradle.org/distributions/等待编译完成…
发现当备份表格的sql语句与删除该表部分数据的sql语句同时运行时,mysql会检测出死锁,并打印出日志   案例描述在定时脚本运行过程中,发现当备份表格的sql语句与删除该表部分数据的sql语句同时运行时,mysql会检测出死锁,并打印出日志.两个sql语句如下:(1)insert into backup_table select * from source_table(2)DELETE FROM source_table WHERE Id>5 AND titleWeight<32768 A…
MySQL如何永久解决由dos编码格式导致MySQ的显示乱码 Ⅰ.新建文件 changeCode.txt Ⅱ.粘贴下面代码(作用:将默认的GBK(936)修改为UTF-8(65001)) Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe] "CodePage"=dword:0000fde9 "FaceName"="cou…
概览 因malloc是加锁的,上网了解的相关信息,额外了解到信号处理规范使用,mark 正文 在执行malloc的过程中,跳转到了信号处理函数中.而信号处理函数在调用某个系统api时,内部又调用了malloc. 看了glibc源码就会知道,malloc内部也是有锁.而且是非嵌套的,如果在上一次调用中拿到锁,又跳转到信号处理函数中再次malloc,自然就导致死锁了.而且即使没有死锁,也极有可能破坏malloc内部维护的一些全局信息,导致后面莫名其妙的崩溃;由此可见,对于信号处理函数"必须保证可重入…
$response = "https://faculty.xidian.edu.cn/system/resource/tsites/tsitesencrypt.jsp?id=_tsites_encryp_tsteacher_tsemail&content=a7da9f4e0712b1c3626d8439f202e43f6691c82013ba38566aef822c1325d2789ec60e565088f4f967d264d6e6f6231a69c3356def42082aeb9e96…
package main import "fmt" func main() { /* 以下程序会导致死锁 c := make(chan int) c <- 10 n1 := <-c fmt.Println(n1) 为什么在同一个goroutine中使用无缓冲通道会导致死锁? 原因:1. 如果通道无缓冲区,则发送方会阻塞,直到接收方接收到该值 2. 如果通道有缓冲区,则发送方会阻塞到值被复制到缓冲区,然后解堵塞, 如果缓冲区已满,则会阻塞到其它goroutine从通道缓冲区中…
问题 使用 HTTP Client 请求 HTTPS 的 API 时出现 The certificate cannot be verified up to a trusted certification authority 异常,并且证书已经传入. 下面就是问题代码: public class Program { public static void Main(string[] args) { var url = @"https://xxx.xxx.xxx.xxx:xxxx/xxx-web/se…
最近发现一个问题,在服务器上通过netstat命令发现有大量的Close_Wait长时间存在,甚至有时候数量接近1000: 查看服务器参数(etc/sysctl.conf): net.ipv4.tcp_keepalive_time 网管已经修改成1200. 参数值还可以改小,但似乎是治标不治本,出现这种问题,肯定是某个地方的程序本身存在问题. 根据ip及端口信息,不难发现是什么地方除问题了,项目中有涉及到图片上传,于是找到图片上传的代码,结果发现代码非常简单,一行上传权限初始化代码,一行CDN官…
自实现的cookie 验证,远程取值的例子 以下代码配合HttpClient使用可以实现跨域(cookie的读写) //验证 复制代码 代码如下: HttpClient httpClient = new HttpClient(url, null, true); httpClient.PostingData.Add(key,value);//登录用户名 httpClient.PostingData.Add(key,value);//密码 string str = httpClient.GetStr…
使用requests模块请求一个证书无效的网站的话会直接报错 可以设置verify参数为False解决这个问题 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import requests r = requests.get('https://www.baidu.com/', verify=False) print(r.status_code) 但是设置verify=False会抛出一个InsecureRequestWarning的…
参考:https://jingyan.baidu.com/article/ca41422fe094251eae99ede7.html…
1.报错信息 java.security.cert.CertificateException: No name matching api.weibo.com found; nested exception is javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching api.weibo.com found 原因:在调用api.weibo.com的时候,我们使用的是…