bind

80端口占用异常解决方法java.net.BindException: Address already in use: JVM_Bind:80(或8080)

南笙酒味 提交于 2020-11-13 07:13:33
1:Tomcat(或其他Web容器)启动时控制台报错如下示: 2007-8-2 15:20:43 org.apache.coyote.http11.Http11Protocol init 严重: Error initializing endpoint java.net.BindException: Address already in use: JVM_Bind:8080 2007-8-2 15:20:43 org.apache.catalina.startup.Catalina load 严重: Catalina.start LifecycleException: Protocol handler initialization failed: java.net.BindException: Address already in use: JVM_Bind:80 2007-8-2 15:20:46 org.apache.coyote.http11.Http11Protocol start 严重: Error starting endpointjava.net.BindException: Address already in use: JVM_Bind:80 2007-8-2 15:20:46 org.apache.catalina.startup.Catalina start

Java Socket与Linux Socket底层调用分析

╄→尐↘猪︶ㄣ 提交于 2020-11-13 03:28:20
本文主要分析从Java Socket API到Linux Socket API的调用链,从而来探究Java Socket是如何利用Linux提供的系统调用来实现对应功能的。 Java Socket API示例代码 首先给出一个利用Java Socket API编写的简易的Hello/Hi代码示例。 //服务端 1 ServerSocket server = new ServerSocket(8000); 2 Socket client = server.accept(); 3 InputStream in = client.getInputStream(); 4 byte [] bytes = new byte [1024 ]; 5 int len = in.read(bytes); 6 String data = new String(bytes, 0 , len); 7 System.out.println("接收客户端消息:" + data); 8 9 OutputStream out = client.getOutputStream(); 10 out.write("Hi" .getBytes()); 11 client.close(); //客户端 1 Socket client = new Socket("localhost", 8000); 2

nginx:反向代理到grpc server

不羁岁月 提交于 2020-11-12 20:43:14
1.nginx 反向代理到grpc http http v2 (grpc) 后端golang使用了grpc开发了部分微服务,访问时直接使用端口请求。 安全隐患,需要开放端口. grpc的go服务器,没有前置的nginx作为缓冲,难以支持大量请求。 直接让公网的请求连接到go编写的grpc的服务,遇到慢请求时,会被拖垮。 eg:每一个客户端的请求上传大文件时,占用一个grpc连接, 公网耗时较长, 且grpc server处理效率较低. eg:nginx在接收到上传的文件后,代理请求, 在内网直接连接go grpc server, 优于外网直接连接. 2.grpc app 配置 grpc app: 端口 127.0.0.1:9091 127.0.0.1:9092 3.nginx conf grpcapp.conf: upstream grpcservers { hash $request_uri; server 127.0.0.1:9002; server 127.0.0.1:9003; } server { listen 9090 http2; access_log ./logs/grpc_app/api.access.log ; error_log ./logs/grpc_app/api.errors.log ; location / { grpc_pass grpc:/

php mysqli扩展之预处理

╄→гoц情女王★ 提交于 2020-11-11 21:33:33
 在前一篇 mysqli基础知识 中谈到mysqli的安装及基础操作(主要是单条sql语句的查询操作),今天介绍的是mysqli中很重要的一个部分:预处理。   在mysqli操作中常常涉及到它的三个主要类:MySQLi类,MySQL_STMT类,MySQLi_RESULT类。预处理主要是利用MySQL_STMT类完成的。   预处理是一种重要的 防止SQL注入的手段,对提高网站安全性有重要意义。   本文案例为 数据库名为test,数据表名为test, 字段有id ,title 两个,id自增长主键。     使用mysqli预处理执行插入操作: <?php define("HOST", "localhost"); define("USER", 'root'); define("PWD", ''); define("DB", 'test'); $mysqli=new Mysqli(HOST,USER,PWD,DB); if ($mysqli->connect_errno) { "Connect Error:".$mysqli->connect_error; } $mysqli->set_charset('utf8'); $id=''; $title='title4'; //用?代替 变量 $sql="INSERT test VALUES (?,?)"; //获得$mysqli

android基础-开发权限

纵然是瞬间 提交于 2020-11-10 22:02:36
简介 安卓权限起到了限制APP活动目录和范围的作用,在安卓开发中的 AndroidManifest.xml 中配置,如: <uses-permission android:name="android.permission.ACCEPT_HANDOVER"></uses-permission> 安卓9以上还需要在<application>中添加允许操作,如: android:requestLegacyExternalStorage="true" AndroidManifest.xml 综合权限配置示例如下: <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapplication"> <!-- 安卓权限配置开始--> <uses-permission android:name="android.permission.ACCEPT_HANDOVER"></uses-permission> <!-- 安卓权限配置结束--> <application android:allowBackup="true" android:label="@string/app_name" android:icon="@mipmap/ic_launcher" android

在SpringBoot中使用@ConfigurationProperties简化多个@Value

会有一股神秘感。 提交于 2020-11-10 21:17:31
在Spring Boot中使用 @ConfigurationProperties 注解 Spring Boot 使用一些松的规则来绑定属性到@ConfigurationProperties bean 并且支持分层结构(hierarchical structure)。 1. 创建一个@ConfigurationProperties bean: @ConfigurationProperties(prefix = "my", ignoreUnknownFields = false, locations = "classpath:my.yml") public class ApplicationProperties { public User user; @data public class ApplicationProperties { private String userName; private String passWord ; } } 2. 创建my.yml 文件 my: user: user-name: admin pass-word: 123456 注: 使用my.properties 文件也可 上例中用到 @ConfigurationProperties 注解就可以绑定属性了。 prefix 用来选择哪个属性的prefix名字来绑定。ignoreUnknownFields

在CentOS 7中使用BIND部署DNS服务器

你离开我真会死。 提交于 2020-11-10 11:30:49
从DNS服务器又称为辅助(备用)服务器,当主DNS服务器因负载过高或出现故障,无法为DNS客户端提供服务时,从DNS服务器将接替主DNS服务器的工作。由于从DNS服务器的数据信息是从主服务器复制而来的,因此从DNS服务器的数据信息是只读的。 本节内容是基于“在CentOS 7中使用BIND部署DNS服务器 - 正向/反向解析 ”的基础上进行部署。 请认真看图,配置好每台的IP地址、子网掩码和网卡的连接模式,再开始下面的练习。 一、主DNS服务器配置 1、编辑主服务器DNS区域配置文件,在正向和反向区域中指定允许传输数据信息的从DNS服务器的IP地址。 第5行和第11行为新增加的配置信息。 vim /etc/named.rfc1912.zones 1 zone "lw.com.cn" IN { 2 type master; 3 file "lw.com.cn.zone"; 4 allow-update { none; }; 5 allow-transfer { 192.168.10.20; }; #允许将本区域的数据信息传输给指定的DNS从服务器; 6 }; 7 zone "10.168.192.in-addr.arpa" IN { 8 type master; 9 file "192.168.10.arpa"; 10 allow-update { none; }; 11 allow