bind

【Redis】Jedis

巧了我就是萌 提交于 2021-01-07 10:51:27
Jedis idea 连接redis 连接本地redis 连接远程redis 常用api 基本 String list set 添加 移除 集合运算 hash 事务 idea 连接redis 连接本地redis 连接本地redis, 则打开本地redis-server 打开后界面如下 public class TestPing { public static void main ( String [ ] args ) { //1. new 一个jedis 对象 Jedis jedis = new Jedis ( "127.0.0.1" , 6379 ) ; //连接本地 //jedis 的命令就是redis的命令 System . out . println ( jedis . ping ( ) ) ; } } 连接远程redis 修改redis.conf 把bind 修改成0.0.0.0 连接redis-server ( base ) flora@MAC-3DGroup:~/myredis$ redis-server ./redis.conf 注意用 ps -ef | grep redis 查看进程时 要是0.0.0.0 才对 java代码 public class TestPing { public static void main ( String [ ] args ) {

Linux:TCP状态/半关闭/2MSL/端口复用

萝らか妹 提交于 2021-01-07 09:35:50
TCP状态 CLOSED: 表示初始状态。 LISTEN: 该状态表示服务器端的某个SOCKET处于监听状态,可以接受连接。 SYN_SENT: 这个状态与SYN_RCVD遥相呼应,当客户端SOCKET执行CONNECT连接时,它首先发送SYN报文,随即进入到了SYN_SENT状态,并等待服务端的发送三次握手中的第2个报文。SYN_SENT状态表示客户端已发送SYN报文。 SYN_RCVD: 该状态表示接收到SYN报文,在正常情况下,这个状态是服务器端的SOCKET在建立TCP连接时的三次握手会话过程中的一个中间状态,很短暂。此种状态时,当收到客户端的ACK报文后,会进入到ESTABLISHED状态。 ESTABLISHED: 表示连接已经建立。 FIN_WAIT_1: FIN_WAIT_1和FIN_WAIT_2状态的真正含义都是表示等待对方的FIN报文。区别是: FIN_WAIT_1状态是当socket在ESTABLISHED状态时,想主动关闭连接,向对方发送了FIN报文,此时该socket进入到FIN_WAIT_1状态。 FIN_WAIT_2状态是当对方回应ACK后,该socket进入到FIN_WAIT_2状态,正常情况下,对方应马上回应ACK报文,所以FIN_WAIT_1状态一般较难见到,而FIN_WAIT_2状态可用netstat看到。 FIN_WAIT_2:

vue内引入jsPlumb流程控制器(一)

梦想的初衷 提交于 2021-01-05 10:19:27
1. npm i jsplumb --save 注:jsplumb要全小写 2. 在main.js内 加: import jsPlumb from 'jsplumb' Vue.prototype.$jsPlumb = jsPlumb.jsPlumb 3. 组件内访问 jsPlumb只有等到DOM初始化完成之后才能使用,因此我们在以下代码中调用jsPlumb方法 this .$jsPlumb.ready( function (){ ··· }); // or this .$jsPlumb.bind("ready", function (){ ··· }); 4. 如果在以上方法内访问 要注意 this指向已经不同 要在方法外 加 var that = this 让方法内的this指向vue 或用箭头函数 或直接在组件内引入 import { jsPlumb } from 'jsplumb' 来源: oschina 链接: https://my.oschina.net/u/4285215/blog/4030065

iOS view生命周期

十年热恋 提交于 2021-01-05 10:07:14
一、view生命周期 1、loadView loadView 方法负责创建UIViewController的view,每次访问UIViewController的view,比如controller.view、self.view,且view为nil,就会调用loadView方法。 关于[super loadView]中的默认实现:(1)首先去查找与UIViewController相关联的xib文件,通过加载xib文件来创建UIViewController的view;(2)如果没有找到关联的xib文件,就会创建一个空白的UIView,然后赋值给UIViewController的view属性。 2、viewDidLoad loadView完成view创建后,会调用此方法,一般来说,我们会在此处进行初始化的相关操作。 3、viewWillAppear 试图即将出现。 4、viewWillLayoutSubviews 建议布局试图在此处进行,这个方法会对所有试图进行真正的布局,包括self.view。 大部分情况下试图的布局代码写在 viewDidLoad 中没有问题,因为最终也是到这里进行布局操作的;但是少数情况下,这会导致一些奇怪的问题,尤其对于XIB而言,因为在 viewDidLoad 和 viewWillAppear 中,试图还是默认XIB的大小,在此方法中才会布局正确。 5

Netty面试题(2020最新版)

扶醉桌前 提交于 2021-01-05 01:18:27
1.Netty 是什么? Netty是 一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。Netty是基于nio的,它封装了jdk的nio,让我们使用起来更加方法灵活。 2.Netty 的特点是什么? 高并发:Netty 是一款基于 NIO(Nonblocking IO,非阻塞IO)开发的网络通信框架,对比于 BIO(Blocking I/O,阻塞IO),他的并发性能得到了很大提高。 传输快:Netty 的传输依赖于零拷贝特性,尽量减少不必要的内存拷贝,实现了更高效率的传输。 封装好:Netty 封装了 NIO 操作的很多细节,提供了易于使用调用接口。 3.Netty 的优势有哪些? 使用简单:封装了 NIO 的很多细节,使用更简单。 功能强大:预置了多种编解码功能,支持多种主流协议。 定制能力强:可以通过 ChannelHandler 对通信框架进行灵活地扩展。 性能高:通过与其他业界主流的 NIO 框架对比,Netty 的综合性能最优。 稳定:Netty 修复了已经发现的所有 NIO 的 bug,让开发人员可以专注于业务本身。 社区活跃:Netty 是活跃的开源项目,版本迭代周期短,bug 修复速度快。 4.Netty 的应用场景有哪些? 典型的应用有:阿里分布式服务框架 Dubbo,默认使用 Netty 作为基础通信组件,还有 RocketMQ

【H3C实验】V7设备PPPOE的配置小实验

ぐ巨炮叔叔 提交于 2021-01-03 23:41:32
PPPOE 技术是家庭拨号上网中非常常用的技术,大家在 V5 平台应该已经配置过了,但是 V7 平台中 PPPOE 的配置与 V5 有一定的区别,还有一些需要大家注意的,今天的技术帖我们就给大家介绍 V7 平台 PPPOE 的配置。 拓扑图如下图所示: 配置如下所示: PPPOE server 配置 [PPPOE SERVER]local-user 123 class network // 配置账户和密码 [PPPOE SERVER-luser-network-jiance]password simple 123 [PPPOE SERVER-luser-network-jiance]service-type ppp [PPPOE SERVER]domain system // 配置域 [PPPOE SERVER-isp-system]authentication ppp local [PPPOE SERVER]ip pool 1 20.1.1.2 20.1.1.10 // 分配给客户端的地址池 [PPPOE SERVER]interface Virtual-Template 1 [PPPOE SERVER-Virtual-Template1]ppp authentication-mode chap domain system // 配置验证方式 [PPPOE SERVER

容器存储标准权威解读 | CSI白皮书(下)

五迷三道 提交于 2021-01-03 16:42:46
应用上云,怎能没有容器!点击上方 容器魔方 关注我 上篇文章我们主要对CSI出现的行业背景,设计要点以及架构等做了总体介绍,本篇我们将对CSI SPEC进行解析,详细介绍每个服务接口的功能。 注:本篇文章基于CSI SPEC 3.0版本编写。 CSI SPEC详解 在CSI SPEC中,总共有三组RPC集: Identity Service: Node Plugin和Controller Plugin都必须实现这些RPC集。 Controller Service: Controller插件必须实现这些RPC集。 Node Service: node插件必须实现这些RPC集。 接下来让我们逐一讲解每个RPC服务。 1.Identity Service RPC 身份服务RPC允许CO查询插件的功能 ,健康状况和其他元数据。 GetPluginInfo: 获取插件的版本和名字。 GetPluginCapabilities: 此方法返回插件所支持的功能。主要检测插件是否实现 Controller Service 和是否支持卷访问拓扑限制。插件的相同版本的所有实例,必须返回相同的功能集。 Probe: 主要用途是验证插件是否处于健康和就绪状态。 2.Controller Service RPC ● CreateVolume: 配置新的存储卷,主要请求参数包括:名字、卷容量、卷功能

java synth实例

大城市里の小女人 提交于 2021-01-01 06:33:15
今天给大家做了个button的synth实例。 首先要创建一个java文件,定义一个button的类,并且在类里面初始化button。画出来 代码如下: import java.awt.Dimension; import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.UIManager; import javax.swing.plaf.synth.SynthLookAndFeel; public class MyButton { JFrame frame = new JFrame("Test synth"); JButton btn = new JButton("Sure"); public MyButton(){ frame.setLayout(new FlowLayout()); frame.setPreferredSize(new Dimension(300, 300)); frame.setBounds(400, 400, 0, 0); btn.setPreferredSize(new Dimension(100,100)); frame.getContentPane().add(btn); } public void show()

搭建DNS服务器

最后都变了- 提交于 2020-12-31 20:34:06
先创建两台虚拟机A和B 虚拟机A 将防火墙状态设置为trusted 2.SELinux当前修改为permissive 3.SELinux永久状态修改为permissive 4.清空Yum缓存,检查Yum是否可用 虚拟机B 将防火墙状态设置为trusted 2.SELinux当前修改为permissive 3.SELinux永久状态修改为permissive 4.清空Yum缓存,检查Yum是否可用 /etc/selinux/config (永久状态配置文件) ######################################################## • 为什么需要DNS系统 – www.baidu.com 与 119.75.217.56,哪个更好记? – 它相当于互联网中的114查号台/导航员 • DNS服务器的功能 – 正向解析:根据注册的域名查找其对应的IP地址 – 反向解析:根据IP地址查找对应的注册域名,不常用 . 根域 • Full Qualified Domain Name,完全合格主机名 – = 站点名.域名后缀 – = 站点名. .. .. .二级域.一级域 • 常见的顶级/一级域名 – 国家/地区域: .cn、 .us、 .kr、 .hk、.tw、.. .. – 组织域: .com、 .net、 .edu、 .org、.gov、.mil、..

C++11多线程编程--线程创建

家住魔仙堡 提交于 2020-12-31 09:32:29
参考资料 adam1q84 我是一只C++小小鸟 Thread support library Book:《C++ Concurrency in Action》 线程的创建 线程的创建有多种方式 std::thread t1(可调用对象); 由于实现(内部的实现这里不在探讨),std::thread()创建一个新的线程 可以接受任意的可调用对象类型 (带参数或者不带参数),包括lambda表达式(带变量捕获或者不带),函数,函数对象,以及函数指针。 下面简单的探讨一下。 1.通过一个不带参数的函数创建线程。 #include <iostream> #include <thread> // 多线程头文件 void Hello() { std::cout << "Hello, World!" << std::endl; } int main() { // 创建一个线程对象,注意函数 Hello 将立即运行。 std::thread t(&Hello); // 等待线程结束。 // 否则线程还没执行(完),主程序就已经结束了。 t.join(); return 0; } cppreference 关于立即运行有提到 在启动了一个线程(创建了一个thread对象)之后 ,当这个线程结束的时候(std::terminate()),我们如何去回收线程所使用的资源呢?