要说迁移部署,其实之前也是运行在jboss下的,不过运行的模式不同 原来只使用了jboss的tomcat 这次使用普通的jboss standalone 的运行模式。 1. 解压模式下运行项目 jboss 默认是使用war包部署运行的,带来的一个问题就是无法增量更新、无法上传图片文件 ; 1. 修改 standalone.xml 添加 auto-deploy-exploded=true 2. 修改需要解压运行的war文件的解压后的文件夹的名称为 project.war , 然后 touch project.war.dodeploy ,重启 standalone.sh 2. nginx文件夹别名 经过上述调整的解压后的文件夹为 project.war , 对应的请求网址为 域名/project ,如果想使用nginx处理图片等静态文件,因为 project.war 不是 project 文件夹,所以没办法请求到文件; 1. 增加一个 软链接 project 到 project.war 3. session id sessionid 中存在空格的问题 这个版本的jboss的使用 65 个字符串来生成sessionid (SESSION_ID_ALPHABET has to be 65 characters […]
Archives: 技术相关
mv tomcat war 文件导致项目被移除
2018-04-24 by Jinyang | No Comments | Filed in 技术相关war不能在tomcat运行时删除,否则会删除自动解压的工程。 你可以停止tomcat后删除war。 当你重新部署的时候,如果有与war文件相同的文件夹,就不会重新部署。 所以 一定不能在服务运行时 mv war 文件 。、 备份文件 ,建议直接tar解压后的文件夹 然后复制到其他路径 。 服务器一定要有一个能运行的备份war包作为应急使用 。
Spring MVC Web服务的Controller的单例模式
2017-10-22 by Jinyang | No Comments | Filed in 技术相关某服务在线上总是只能稳定几天 有时一需要需要重启几次,每次失去响应时 必须要重启才能解决。 同容器下的其他服务正常,此前看过日志 发现服务挂掉前有内存溢出的情况。 但是内存降下来后 其他服务都恢复了,就它没能恢复,总是要手工处理,很不好。 我猜测是因为其他代码比较老,直接是JSP或Servlet等形式,每次请求都生成对象, 看了下SpringMVC的控制器的单例模式,默认其他就是单例模式( Singleton ) 为的是减少内存申请的开销和占用,本质是个好的出发点, 在控制器声明出增加注解将其修改为Session模式,因为是web项目,我想Session模式应该是web项目最适合的场景了。 代码就一行: @Scope(value = “session”) //session模式 分别测试了模式的单例模式, 增加了打印Controller的Object的ID的代码如下 : _log.info(“loading form page”); _log.info(“session is :”+req.getSession().getId()); _log.info(“object is :”+ java.lang.System.identityHashCode(this)); 测试得到对象的identityHashCode符合预期: 2017-10-21 20:00:34,191 DEBUG – DispatcherServlet with name ‘springMVC’ processing GET request for [/********/******/****.do] 2017-10-21 20:00:34,192 DEBUG – Looking up handler method for […]
银行卡前6为BIN信息
2017-09-11 by Jinyang | No Comments | Filed in 技术相关/* Navicat MySQL Data Transfer Source Server : myweb Source Server Version : 50549 Source Host : 120.25.241.187:3306 Source Database : bank Target Server Type : MYSQL Target Server Version : 50549 File Encoding : 65001 Date: 2016-05-19 17:43:20 */ SET FOREIGN_KEY_CHECKS=0; — —————————- — Table structure for `bank_card_bin` — —————————- DROP TABLE IF EXISTS […]
买买买,不后悔
2017-07-09 by Jinyang | 1 Comment | Filed in 技术相关最近没有下手几个域名,都不贵,竞拍结束后,又比较后悔。 决定加大力度的买买买,不再犹豫了。 错过的几个: dearfounder.com randomchain.com zhuanglue.com 感觉都还是能保本的。 便宜的不买,贵的买不起 ,陷入到一种僵局中去了, 还是要执行此前的低利润运维模式。
启用三星Note4
2017-07-05 by Jinyang | 1 Comment | Filed in 技术相关恩,是的,是Note4,不是Note7 也不是S8 . 最近3年一直用的是iPhone 5C ,后来发展到2个 因为要挂一个QQ和号码用于一些业务需求。 曾经很希望能每年或每2年都及时的更换上当下的旗舰设备,现在是越来 越来的落伍了。 有4年的时间没有刷过手机ROM了吧 , 苹果也不需要越狱 有了来电阻止的腾讯手机管家 基本上没有越狱的需求了 。 这几年里 对谷歌搜索 邮箱 Voice Twitter的依赖越发严重。 使用了国行的系统2天,不太敢刷机 怕搞不定直接成砖了,在盖乐世论坛 研究了2个小时,下载了官方的港行rom包。 没有想到 odin 刷机 真的很便捷 ,6分钟 完成了刷机 ,港行rom继承了谷歌全家桶,真的是都是需要的 。 问题又来了 16G的国行note4 不够用,还好谷歌支持tf存储卡和手机内存卡的融合,这些命令的调试运行对我来说就熟悉了,京东下单三星64Gtf卡,次日到手,合并存储,完美。 融合后 合计有了80G的存储空间,再也不用担心空间不够用的问题了 。
家里台式机-办公室笔记本-双向连接-无缝办公
2017-06-20 by Jinyang | No Comments | Filed in 技术相关南京地铁安检后, 很讨厌每天上下班背着电脑,虽然2个电脑的主要文档都通过Dropbox做了同步,但是开发环境主要还是在笔记本上。 事情很多,忙不过来,事情一多 反而会出现一个也做不好的情况, 我只适合单线程的处理简单的问题, 那我就需要把事情排优先级,分解步骤,然后一点点的去完成。 使用了 google keep 来管理日程事情,手机电脑同步,效果不错。 但是家里的电脑只能做一些简单的事情,不能完全的开发。 家里电脑因为有电信的独立IP ,可以随时通过 mstsc 远程桌面连接, 但是在公司用的笔记本 不太方便连接。 使用了 teamviewer ,设置了无人值守 ,绑定了电脑到自己的账号, 终于在家里也可以随时连接到自己的笔记本了。 安全性上 应该也还好。 效率大幅度提升了
执行力 障碍
2017-06-20 by Jinyang | No Comments | Filed in 技术相关一个简单的事情 困扰了3周 有一份5000行记录的表,做了一个25000000的笛卡尔集合表, 想要过滤重复的然后建立唯一索引, 去重的工作 2周没能完成,因为云服务器没有空间了,就着手分析磁盘占用 清理空间, 云服务器执行不出脚本,就导出到本地执行,本地执行了2次sql语句 每次都2天 ,都没能跑出结果, 周末在家换了个思路,十多分钟,数据筛选过滤完成,直接把 group后的记录存储。 本机导出数据表,2个G的文件,上传到服务器,导入 失败: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near , 尝试导出时指定utf8编码,依然失败,文件太大 notepad++无法打开,下载新的7版的64位程序,打开后发现果然编码有问题,转换编码,再次上传, 导入,搞定。 sql文件使用7zip先tar打包在gzip压缩,从2g直接到200M。 做一件小时 也很难,是以为记。
清除mysql数据库表中的异常空格字符串
2017-05-02 by Jinyang | No Comments | Filed in 技术相关UPDATE english_words_5000_double SET word = REPLACE(word, ‘\t’, ” );commit; UPDATE english_words_5000_double SET word = REPLACE(word, ‘\n’, ” );commit; UPDATE english_words_5000_double SET word = REPLACE(word, ‘\r’, ” );commit; UPDATE english_words_5000_double SET word = REPLACE(word, ‘ ‘, ” );commit; UPDATE english_words_5000_double SET word1 = unhex(REPLACE(hex(word1), ‘C2A0’, ” )), word2 = unhex(REPLACE(hex(word2), ‘C2A0’, ” ));commit; UPDATE english_words_5000_double SET […]