Java Service Wrapper 浅谈】的更多相关文章

在实际开发过程中很多模块需要独立运行,他们并不会以web形式发布,传统的做法是将其压缩为jar包独立运行,这种形式简单易行也比较利于维护,但是 一旦服务器重启或出现异常时,程序往往无法自行修复或重启.解决服务器重启的传统做法是编写一段shell脚本随服务器启动而运行.但现在我们有一种更加简洁实用的方法可以解决上述问题—— Java Service Wrapper (JSW). Java Service Wrapper 顾名思义就是将java程序包装成系统程序,这样可以随着系统的运行而运行.换句话…
在实际开发过程中很多模块需要独立运行,他们并不会以web形式发布,传统的做法是将其压缩为jar包独立运行,这种形式简单易行也比较利于维护,但是一旦服务器重启或出现异常时,程序往往无法自行修复或重启.解决服务器重启的传统做法是编写一段shell脚本随服务器启动而运行,但是这样做只是治标,那么我们想寻求一种“治本”的方式该怎么办呢?        Java Service Wrapper就轻松而简单的为我们解决了这些问题."Java Service Wrapper"顾名思义,将我们的Jav…
Java Service Wrapper (http://wrapper.tanukisoftware.com/doc/english/product-overview.html)可以很方便得在各个平台(windows,linux,max os)管理Java进程,管理JVM,启动停止,开机启动,管理内存溢出的异常  标准版还可以发错误日志email,检测死锁 比自己写个启动脚本更为方便通用稳定,后台服务可以考虑使用JSW. 这里使用免费的社区版,可以先直接跑一下demo看效果. 基本原理就是 j…
上周,公司某一环境发生java service wrapper内存剧增导致最后被自动killed的情况,经过分析,确定导致java service wrapper(后续简称wrapper)守护进程内存快速增长直至被killed的最根本原因是应用程序到mysql数据库的jdbc可用连接远远小于java应用并发线程数,导致报了很多的连接异常(这些异常在至少三种情况下会发生:应用程序启动时mysql未启动,应用程序启动期间mysql被正常或异常关闭,mysql负载过高无响应或者超时,三者均可重现wra…
今天做了一个读取数据入库的程序.由于读取的数据每天都更新,于是就想把程序做成一个服务,每天定时执行.研究了一下,发现有几种方式可以做.下面我主要记录一下JAVA Service Wrapper方式. 一.下面是整个程序的功能部分: 1.连接数据库的功能.我写了一个DBConnecter类,是一个单例. public class DBConnecter { private static DBConnecter instance = null; private static Connection c…
1.web项目,即tomcat/resin添加至window系统服务,步骤如下:第一步:找到tomcat的bin目录,如:D:\apache-tomcat-8.0.26\bin第二步:打开cmd,cd到该目录,执行:service.bat install 即可将tomcat添加至服务中: 同理,打开cmd,cd到该目录,执行:service.bat remove 即可将tomcat从服务中删除:注意:修改service.bat中SERVICE_NAME/DISPLAYNAME即可修改服务名称和服…
前言 Java Service Wrapper是Tanuki Software的一个产品,可以将Java应用注册成Windows或Linux服务,使其可以随系统开机启动,同时可以监控Java应用的状态,使其在出异常状况时自动启动,其具体特性请参考官方文档Overview of Wrapper features ,本文记录了笔者在官方文档指导下在Linux环境下用Java Serivice Wrapper配置Tomcat应用的实践. 前提 Suse Linux 64位 Java 8 Downloa…
Java Service Wrapper 将Java 应用程序部署成Windows系统服务Java Service Wrapper 1 Product Overview 1 Editions 2 Methods of Integrating with the Java Service Wrapper 2 Method 1 - WrapperSimpleApp Integration (Windows) 2 Export your program as a runnable jar 2 Insta…
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/sinat_26279177/article/details/70807173 1       简介 最近项目中需要做一个Windows系统服务,记录一下使用过程. Java Service Wrapper 可以将Java程序包装成系统服务,这样就可以随着系统的运行而自动运行.Java Service Wrapper分为Professional.Standard.Community三个版本,并支持3…
有时候我们希望我们java写的程序作为服务注册到系统中,Java Service Wrapper(下面简称wrapper)是目前较为流行的将Java程序部署成Windows服务的解决方案, 本文将讨论如何使用wrapper把我们的程序打包成WIN服务! 主要作用有: 1.打包服务 2.设置JVM参数 3.所有的日志可以输出到指定文件 0.准备需要注册为服务的程序 public class MapTest { private static int i; public static void mai…
一般在容器比如tomcat/weblogic中运行时,我们都是通过log4j控制日志输出的,因为我们现在很多服务端使用java service wrapper(至于为什么使用jsw,原先是比较排斥使用的,但是当一台服务器上部署10来个应用时,我们无条件的选择了jsw,因为不需要折腾和规划这么多的端口了,尤其是我们还是自己的RPC时,每个应用的端口需求从4个变成了1个)进行启动和管理,而JSW还有自己的日志格式,可以说在log4j上又套了一层马甲,默认的日志格式并不是输出原始log4j信息,因为我…
本文转自https://www.cnblogs.com/zcy_soft/p/3738947.html,写的非常好,珍藏一下 1. wrapper的意思? wrapper在此处理解为“包装”. 2.  java service wrapper的作用? 在实际开发过程中很多模块需要独立运行,他们并不会以web形式发布,传统的做法是将其压缩为jar包独立运行,这种形式简单易行也比较利于维护,但是一旦服务器重启或出现异常时,程序往往无法自行修复或重启.解决服务器重启的传统做法是编写一段shell脚本随…
一. 概述 使用java语言开发应用程序,在windows平台下,一般存在3种应用形式: 1. web应用.web应用多数打成war包在web容器(如tomcat,jetty等)中运行. 2. 桌面应用.桌面应用一般打成jar包或exe文件运行. 3. 后台服务应用.后台服务应用一般打成jar包,然后使用命令行(如java -jar xxx.jar)运行. 二. 什么是windows服务? Microsoft Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows…
下载Windows版本:https://www.krenger.ch/blog/java-service-wrapper-3-5-37-for-windows-x64/ 转自:F:\java\bhGetJzData\lib\wrapper.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform 有时候我们希望我们java写的程序作为服务注册到系统中,Java Service Wrapper(下面简称wrapper)是目前较为流行的将Java…
下载Windows版本:http://nchc.dl.sourceforge.net/sourceforge/wrapper/wrapper-windows-x86-32-3.2.3.zip 现在目前只要32位有免费的,64位免费版目前还没有做出来.官网上(社区)那一列是免费的. 所以我们还需要下载32位的jre,让wrapper可以执行.(jre下载自己去百度) 下面简单介绍一下具体的使用步骤:1.  将下载的Java Service Wrapper包解压到本地,目录为{WRAPPER_HOM…
目录(?)[+] 1概述 1_1为什么要用服务形式运行 1_2如何让java程序以服务形式运行 1_3打包需求 2程序示例 3maven打zip包 3_1maven-assembly-plugin介绍 3_2maven-assembly-plugin配置 3_3描述符wrapper-win-zipxml配置 4jsw集成java后台服务 4_1jsw介绍与下载 4_2添加jsw到java程序 4_3安装与卸载 4_4打包并测试 5附件 1.概述 使用java开发程序,在windows平台下,一般…
在项目的开发中,有时候需要将Java应用程序打包成Windows服务,我们就直接可以通过windows的服务来启动和关闭java程序了. 本博文将通过有两种方法实现该功能,手动创建法和Maven自动打包法. 一. 准备 下载java service wrapper 网址:http://sourceforge.net/projects/wrapper/或http://wrapper.tanukisoftware.com/doc/english/download.jsp 我下载的版本是wrapper…
以java应用程序为例,打包为tianlong.jar,程序入口为tianlong.QueueTest. 下面在linux的/opt下建立tianlong目录,复制tianlong.jar到/opt/tianlong/lib目录下.  1.下载Java Service Wrapper(目前版本wrapper-linux-x86-32-3.3.2), 解压. http://wrapper.tanukisoftware.org/  复制src/bin/sh.script.in到/opt/tianlo…
1       简介 最近项目中需要做一个Windows系统服务,记录一下使用过程. Java Service Wrapper 可以将Java程序包装成系统服务,这样就可以随着系统的运行而自动运行.Java Service Wrapper分为Professional.Standard.Community三个版本,并支持32位和64位的系统,其中Community版本为免费的社区版本. 2       配置过程 (1)安装java运行环境 (2)java程序打包成jar包 (3)在硬盘上创建文件夹…
刚接触java,第一次使用Java开发windows服务,也是刚不久看了SSM框架 简直也是一头雾水,不过只要用心理解,其实很简单,下面有详细的步骤,包学包会 在windows上运行jar包,需要在工作目录下使用命令行运行jar包,这样会出现一个命令行窗口 而且这个命令行窗口有可能会不小心被关闭,且服务器启动后需要人为去点击开启 对于有些服务性的程序来说,我们需要将其部署为windows服务,在系统启动的时候自动启动 后来研究了两种方式: 1.使用 JavaService.exe 安装jar包…
1.下载java service wrapper 下载地址:http://wrapper.tanukisoftware.com/doc/english/download.jsp 针对自己的需求下载相应的软件版本,有linux,windows,苹果系统等,我的需求环境是windos 64版本. 2.配置 1. 将你的程序打成jar包,我的jar包名字:OASignInOut-1.0.0.jar,运行的主类路径名称:com.codyy.oa.App. 至于用途嘛,你猜猜? 2. 新建一个文件夹,命名…
一.Java的反射机制浅谈 最近研究java研究得很给力,主要以看博文为学习方式.以下是我对java的反射机制所产生的一些感悟,希望各位童鞋看到失误之处不吝指出.受到各位指教之处,如若让小生好好感动,说不定会请各位吃饭哦! 1.何谓反射机制 根据网文,java中的反射机制可以如此定义: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制. 2.反射…
#encoding=UTF-8 # Configuration files must begin with a line specifying the encoding # of the the file. #******************************************************************** # Wrapper License Properties (Ignored by Community Edition) #***************…
最近看到公司的一些框架和之前看到的开源的一些框架的一些服务发现和接入都采用了java的spi机制. 所以简单的总结下java spi机制的思想. 我们系统里抽象的各个模块,往往有很多不同的实现方案,比如日志模块的方案,xml解析模块.jdbc模块的方案等.面向的对象的设计里,我们一般推荐模块之间基于接口编程,模块之间不对实现类进行硬编码.一旦代码里涉及具体的实现类,就违反了可拔插的原则,如果需要替换一种实现,就需要修改代码. 为了实现在模块装配的时候能不在程序里动态指明,这就需要一种服务发现机制…
假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short,float,double.long)同样适用于该类情况. 但是如果你复制的是一个对象,情况就有些复杂了. class Student { private int number; public int getNumber() { return number; } public void setNumb…
Num1:单例模式 基本概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 常见写法: 懒汉式 public class Singleton { /* 持有私有静态实例,防止被引用,此处赋值为null,目的是实现延迟加载 */ private static Singleton instance = null; /* 私有构造方法,防止被实例化 */ private Singleton() {} /* 1:懒汉式,静态工程方法,创建实例 */ public static Singleto…
跨平台 Java的一大特性是跨平台,而Java是如何做到跨平台的呢? 主要依赖Java虚拟机,具体来说,是Java虚拟机在各平台上的实现. Java虚拟机在不同的平台有不同的实现.同一份字节码,通过运行在不同平台上的Java虚拟机,可以完成相同的处理逻辑. 这样,由不同平台的Java虚拟机屏蔽了不同平台的差异,开发者无需针对不同的平台编写不同的代码. 而字节码,即class文件,由Java代码编译而来. 前端编译.解释.后端运行时编译 字节码,即class文件,由Java代码编译而来.这里的编译…
Java基础知识.关于List.Set.Map接口的了解,以及ArrayList.LinkedList.HashSet.TreeSet.HashMap.TreeMap...…
<Windows Azure Platform 系列文章目录> 最近在和一些客户聊天,常常被遇到这样的问题: 1.问题一:我在创建一个新的Windows Azure Virtual Machine的虚拟机时候,会同时创建同样名称的Cloud Service(云服务). 我看微软的报价里说虚拟机会收费,云服务也会收费.这样的话,我使用虚拟机,是不是收取我虚拟机+云服务=2倍的费用? 2.问题二:我在使用VS2013,将asp.net的应用程序部署到微软的PaaS平台的时候,只会有Cloud Se…
江南好,何处异京华. 香散翠帘多在水,绿残红叶胜于花.无事避风沙. --<纳兰词> 诗词再好,大图不能忘 上大图: 先说说栈和队列: 栈就好比手枪的弹匣,你往里面压入子弹,最先压入的子弹就到了弹匣最底部的位置,最后压入的子弹在弹匣顶部.发射子弹的时候每次将弹匣顶部的子弹弹出发射.无法越过顶部子弹发射下面的子弹. 栈(stack)是限定仅在表尾进行插入和删除操作的线性表,LIFO 队列就跟上学那会儿排队打饭一样,但是不能加塞儿. 队列(queue)是只允许在队列一端进行插入操作,另一端进行删除操…