数据分片 概念: 按特定方式拆分,分散存放到多个数据库服务器上,达到负载效果 垂直分割:单个表切换成多个表,按业务类别分散到不同数据库. 水平分割:将表里的多条记录切分到不同数据库.
搭建数据分片服务器 MyCAT
基于JAVA的分布式 适合大量写入数据的存储需求 分片 高可用集群 读写分离 都可以使用MYCAT 支持MYSQL Oracle Sqlserver Mongodb
分片规则: 枚举法 固定分片 范围约定 求模法 日期列分区法 通配取模 ASCII码求模通配 编程指定 字符串拆分hash 一致性hash Mycat软件介绍: 工作过程图一 工作过程图二
一、配置mycat环境
拓扑结构、
IP规划
二、开始搭建mycat分片服务器(56操作)
步骤一:公共配置 1)关闭防火墙和selinux,配置yum源(系统源),这里不再操作 2)把53,54,55还原成独立数据库服务器,56主机下载mycat 软件包 需要的软件包:Mycat-server-1.6 这个软包需要三台数据库服务器
56]# tar -zxvf Mycat-server-1.6-linux.tar.gz
56]# mv mycat/ /usr/local
56 ]# cd /usr/local/mycat/
56 mycat]# ls
bin catlet conf lib logs version.txt
配置文件 修改配置文件图一 3)在53(主机)54(主机)和55(主机)上面创建db3、db2、db1库和授权一个用户。
53]# mysql -u root [email protected]
mysql> create database db3;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on * . * to roota@"%" identified by "[email protected] ";
52]# mysql -u root [email protected]
mysql> create database db2;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on * . * to roota@"%" identified by "[email protected] ";
51]# mysql -u root [email protected]
mysql> create database db1;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on * . * to roota@"%" identified by "[email protected] ";
4)修改数据库的配置文件(53、54、55) 注意:1代表不区分表名的大小写,0为区分大小写 主机c1上面:
53]# vim /etc/my.cnf
[mysqld]
lower_case_table_names=1 //表名忽视大小写
53]# systemctl restart mysqld
54]# vim /etc/my.cnf
[mysqld]
lower_case_table_names=1 //表名忽视大小写
54]# systemctl restart mysqld
55]# vim /etc/my.cnf
[mysqld]
lower_case_table_names=1 //表名忽视大小写
55]# systemctl restart mysqld
5)在56主机上面安装JDK和mycat
56]# rpm -qa | grep -i jdk //安装自带的即可 java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64 java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64 copy-jdk-configs-2.2-3.el7.noarch 56]# yum -y install java-1.8.0-openjdk 56]# cd mysql/ 56mysql]# tar -xf Mycat-server-1.4-beta-20150604171601-linux.tar.gz //免安装,解压即可使用 56mysql]# mv mycat/ /usr/local/ 56mysql]# ls /usr/local/mycat/ bin catlet conf lib logs version.txt 56mysql]# cd /usr/local/mycat/ 56mycat]# ./bin/mycat --help Usage: ./bin/mycat { console | start | stop | restart | status | dump } 修改配置文件图二 (图片上的修改仅供查看,不做修改) 修改配置文件图三 (图片上的修改仅供查看,不做修改) 修改配置文件图四 (图片上的修改仅供查看,不做修改)
修改配置文件图五 (图片上的修改仅供查看,不做修改) 6)56主机上修改配置文件。
56]# cd /usr/local/mycat/conf
56conf]# vim schema.xml
7 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
8
9 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
10 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
12 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
14 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个
16 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个
..........
.........
27 //在53创建的数据库
28 //在54创建的数据库
29 //在55创建的数据库
//代表一个数据库服务器
31
33 select user()
34 //数据库服务器的IP、端口、用户、密码
36
37
38
39 // name="localhost54"代表主机54,只是一个标识。
41 select user()
42
44
45
46
47 // name="localhost55"代表主机53,只是一个标识。
49 select user()
50 //数据库的IP、用户、密码
52
53
7)添加PATH路径(可不用)
56 conf]# export PATH=/usr/local/mycat/bin:$PATH
56 conf]# echo "PATH=/usr/local/mycat/bin:$PATH" >> /etc/profile
56 conf]# source /etc/profile
56 conf]# echo $PATH
/usr/local/mycat/bin:/usr/local/mycat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
56 conf]# which mycat
/usr/local/mycat/bin/mycat
8)启动服务并查看端口
56 conf]# /usr/local/mycat/bin/mycat start
Starting Mycat-server...
56 conf]# netstat -antup | grep :8066
tcp6 0 0 :::8066 :::* LISTEN 6421/java
[root@mycat conf]# ps -C java
PID TTY TIME CMD
6421 ? 00:00:04 java
9)客户端验证:
客户端50连接分片服务器访问数据
50]# mysql -h192.168.4.56 -P8066 -u root -p123456;
mysql> show databases;
mysql> use testdb;
mysql> create table employee(
> ID int primary key auto_increment,
> sharding_id int,
> name char(30),
> age int);
mysql> desc employee;
mysql> insert into employee(sharding_id,name,age) values(10000,"bob",19); //插入的数据库存储在53
mysql> insert into employee(sharding_id,name,age) values(10010,"fanny",19); //插入的数据库存储在54
select * from employee;
10)修改56主机分片规则配置文件,让数据库可以分片存储到服务55里 56]# /usr/local/mycat/bin/mysqlcat stop 56]# vim /usr/local/mycat/conf/partition-hash-int.txt 10000=0 10010=1 10020=2
partition-hash-int.txt //设置分片规则的配置文件,规则为枚举算法。 枚举类型算法: 10000=0 //代表数据存储在数据服务器53 10010=1 //代表数据存储在数据服务器54 10020=2 //代表数据存储在数据服务器55
56]# /usr/local/mycat/bin/mysqlcat start
56]# ss -unptl | grep 8066
50]# mysql -h192.168.4.56 -P8066 -u root -p123456
mysql> create table company(ID int primary key auto_increment,name char(30));
Query OK, 0 rows affected (0.77 sec)
mysql> desc company;
+-------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+----------------+
| ID | int(11) | NO | PRI | NULL | auto_increment |
| name | char(30) | YES | | NULL | |
+-------+----------+------+-----+---------+----------------+
55 ~]# mysql -u root [email protected]
mysql> use db1;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)
53 ~]# mysql -u root [email protected]
mysql> use db2;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db2 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)55 ~]# mysql -u root [email protected]
mysql> use db3;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db3 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)
11)创建表指定余数存储到数据库服务器
56]# mysql -h192.168.4.56 -u root -p123456
mysql> create table hotnews(id int,name char(30));
Query OK, 0 rows affected (0.98 sec)
mysql> insert into hotnews(id,name) values(10,"qq"),(8,"oo"),(12,"uu");
Query OK, 3 rows affected (0.37 sec)
55]# mysql -u root [email protected]
mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| company |
| employee |
| employee02 |
| hotnews |
+---------------+
4 rows in set (0.00 sec)
mysql> select * from hotnews;
+------+------+
| id | name |
+------+------+
| 8 | oo |
+------+------+
1 row in set (0.00 sec)
54]# mysql -u root [email protected]
mysql> show tables;
+---------------+
| Tables_in_db2 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)
mysql> select * from hotnews; ±-----±-----+ | id | name | ±-----±-----+ | 10 | qq | ±-----±-----+ 1 row in set (0.00 sec) 53]# mysql -u root [email protected] mysql> show tables; ±--------------+ | Tables_in_db3 | ±--------------+ | company | | employee | ±--------------+ 2 rows in set (0.00 sec)
mysql> select * from hotnews; ±-----±-----+ | id | name | ±-----±-----+ | 12 | uu | ±-----±-----+ 1 row in set (0.00 sec)
你可能感兴趣的:(MySQL数据库知识集,搭建mycat分片服务器)
告别烦人的休眠:Ubuntu 20.04 彻底禁用自动休眠的七种武器
芯作者
D2:ubuntu linux ubuntu
系统休眠就像那个过于热心的同事——在你专注工作时突然关掉你的电脑,还一脸无辜地说"我以为你不需要了"**。本文将为你提供七种专业解决方案,彻底驯服Ubuntu20.04的休眠机制。一、为什么我们需要禁用自动休眠?想象这些场景:深夜挂着下载大文件,早上发现下载中断远程服务器运行着关键任务,突然失联科学计算跑了三天三夜,结果因休眠前功尽弃在线会议中途屏幕突然变黑Ubuntu的休眠机制设计初衷是节能,但
CHAIN(GAN的一种)训练自己的数据集
这张生成的图像能检测吗
优质GAN模型训练自己的数据集 生成对抗网络 人工智能 神经网络 深度学习 pytorch 算法
简介简介:作者针对数据有限场景下GANs训练中的判别器过拟合问题,提出了CHAIN(Lipschitz连续性约束归一化)方法。作者首先从理论角度分析了GAN泛化误差,发现减少判别器权重梯度范数对提升泛化能力至关重要。然后深入研究了批归一化(BN)在GAN判别器中应用困难的根本原因,通过理论分析证明BN的中心化和缩放步骤会导致梯度爆炸。基于这些发现,CHAIN设计了两个核心模块:用零均值正则化替代中
【云原生技术】 代码解析-Jenkinsfile 脚本在流水线里调用 SonarScanner CLI,把代码分析结果上传到 SonarQube 服务器
阿寻寻
云原生 kubernetes 容器 服务器
下面这段Jenkinsfile脚本是在流水线里调用SonarScannerCLI,把代码分析结果上传到SonarQube服务器。逐行解释如下:sh"""$SCANNER_HOME/bin/sonar-scanner\#①调用SonarScanner,可执行文件放在SCANNER_HOME/bin-Dpmd.skip=true\#②跳过PMD规则集(如果只想跑Sonar内置规则)-Dmaven.te
多线程和JUC
进程进程就是正在运行的程序,是系统进行资源分配和调用的独立单位。每一个进程都有他自己的内存空间和系统资源多进程意义在于计算机可以执行多个任务,提高cpu使用率我们在一边玩游戏,一边听音乐的时候,是cpu在做着程序间的高效切换让我们觉得是同时进行的注意:很多多线程是模拟出来的,真正的多线程是指有多个cpu,即多核,如服务器。如果是模拟出来的多线程,即在一个cpu的情况下,在同一时间点,cpu只能执行
mysql 内积_Python如何计算两行数据内积
Python计算两行数据内积的方法:首先使用【mat()】方法;然后将每组数据分别放到方法里转换为矩阵;再使两矩阵相乘;最后进行转换即可。>>>a=mat([[1],[2],[3]]);>>>b=mat([[0],[2],[3]]);>>>amatrix([[1],[2],[3]])>>>bmatrix([[0],[2],[3]])>>>a.T*bmatrix([[13]])上面为两个列向量的内积
CentOS7之Dify部署
weifacai
docker
CentOS安装时IP4设置成手动,DNS设置为8.8.8.8,8.8.4.4宝塔安装地址:宝塔面板下载,免费全能的服务器运维软件1.CentOS安装DockerDockerCE支持64位版本CentOS7,并且要求内核版本不低于3.10,CentOS7满足最低内核的要求,所以我们在CentOS7安装Docker。1.1.卸载(可选)如果之前安装过旧版本的Docker,可以使用下面命令卸载:yum
Dify搭建私有知识库指南
挑战者666888
AI模型应用实战 人工智能 自然语言处理 机器学习
系列文章目录CentOS系统高效部署Dify全攻略文章目录系列文章目录Dify搭建私有知识库指南一、引言二、环境准备与基础配置(含Linux命令)1.硬件要求2.软件依赖安装(Linux命令)3.安装Dify(Docker-compose部署)4.初始化设置三、数据接入与知识库构建(含实战案例)1.数据源接入示例2.数据预处理3.向量化存储配置实战案例:企业产品手册知识库四、检索与增强功能实现1.
MySQL · 特性分析 ·MySQL 5.7新特性系列
挑战者666888
mysql mysql adb 后端
文章目录1.背景2.我们先大致看下InnoDB的undo在不同的版本上的一些演进:3.MySQL5.7的版本上3.1接下来我们详细看下5.7的InnoDBundo的管理:3.1.1undo表空间创建3.1.2rollbacksegment的分配如下:3.1.3InnoDBundo的空间管理简图如下:undo空间管理1.rsegslot2.rsegheader3.undosegmentheaderu
QT实现WebSocket通信
码农飞飞
QT+QML qt websocket 网络通信 客户端 服务端 html页面
文章目录WebSocket服务端WebSocket客户端htmlwebsocket客户端在Qt5中实现WebSocket通信可以通过使用QtWebSockets模块来实现。这个模块提供了一个WebSocket客户端和服务器的实现,可以很方便地在你的应用程序中集成WebSocket功能。使用的时候,首先在pro工程文件中添加对应的模块:QT+=corewebsocketsWebSocket服务端Qt
云常用服务器工具
Vegetable Dog.
云服务器运行环境搭建 服务器 腾讯云 运维
从零搭建云服务器开发环境,持续更新1.Xshell可自行下载破解版功能:ssh远程连接服务器使用:移步腾讯云服务器入门使用-连接登录展示:2.Docker使用:移步在腾讯云服务器上安装docker
Softhub软件下载站实战开发(十三):软件管理前端分片上传实现
叹一曲当时只道是寻常
前端 golang
文章目录Softhub软件下载站实战开发(十三):软件管理前端分片上传实现前言前端分片上传架构设计️核心组件实现1.上传资源组件(`uploadResource.vue`)2.分片上传逻辑实现3.资源管理组件(`editResource.vue`)文件大小格式化组件大整数处理方案总结Softhub软件下载站实战开发(十三):软件管理前端分片上传实现前言在之前文章中,我们实现了软件分片上传的后端接口
在Unity WebView中运行React应用的解决方案
马特说
UNITY REACT unity react.js 游戏引擎
在UnityWebView中运行React应用的解决方案概述本文档详细介绍了如何在Unity应用中通过WebView加载React应用,并解决在Android平台上常见的路径和网络问题。目录项目架构React项目打包Unity本地服务器配置Android平台特殊处理路径映射问题解决网络权限配置完整实现步骤常见问题排查项目架构该项目采用以下架构:Unity应用:主应用程序,包含游戏逻辑和UIWebV
最新最全的阿里云服务器部署Django项目教程(2021)
阿里云Linux服务器以Nginx+uWSGI部署Django项目教程前言:本教程适用于以Windows和Linux系统环境开发Django项目的初学者,帮助其将第一个Django项目部署上线,同时包含了一部分的DeBug方案,供其参考。-作者本地环境是Django2.0+Python3.8.3+Sqlite,以virtualenv在本地建立的虚拟环境。-作者Web代理服务器使用的是uWSGI,反
【宝塔Linux面板】在阿里云服务器安装
孤独本就常态
linux 运维 阿里云
文章目录一、宝塔Linux面板是什么?二、宝塔Linux面板安装步骤1.下载Xshell2.远程连接服务器3.进入宝塔官网4.安装面板5.安装成功三、总结一、宝塔Linux面板是什么?宝塔Linux面板是提升运维效率的服务器管理软件,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。有30个人的专业团队研发及维护,经过200多个版本的迭代,功能全,少
Buildroot,Debian 和 Ubuntu 有什么差别
科学的发展-只不过是读大自然写的代码
驱动开发 debian ubuntu 运维
Buildroot、Debian和Ubuntu都是流行的Linux发行版或构建系统,但它们在目标、使用方式和结构上有所不同。以下是它们之间的主要差别:Buildroot:Buildroot是一个为嵌入式Linux系统提供完全自动化构建的工具。它不是一个常规的Linux发行版,而是一个用于构建自定义Linux系统的工具集。使用Buildroot,你可以从零开始构建一个定制的Linux系统,包括内核、
TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete blo
@Sadam
后端 ES ElasticSearch TOO_MANY_REQU disk usage exc read-only-all
ES插入大量的数据时报错:TOO_MANY_REQUESTS/12/diskusageexceededflood-stagewatermark,indexhasread-only-allow-deleteblock的解决方法原因:是因为一次请求中批量插入的数据条数巨多,以及短时间内的请求次数巨多引起ES节点服务器内存超过限制,ES主动给索引上锁。解决办法:PUT_all/_settings{"in
docker搭建靶场
无名小猴
HTB靶场练习 学习
一、dockerfile使用Dockerfile是用来构建Docker镜像的配置脚本,定义了:用哪个基础镜像(如python:3.10)安装哪些依赖(如pipinstall)拷贝哪些文件(如本地代码、配置)设置运行入口(如CMD[“python3”,“main.py”])写好dockerfile构建镜像dockerbuild-f/Dockerfile-tmy_image_name/dockerpa
【MySQL基础】MVCC多版本并发控制
scj1022
MySQL mysql
文章目录MVCC-多版本并发控制一、MVCC概述1、三种并发场景2、当前读&快照读3、MVCC的作用4、结合MVCC处理并发问题二、MVCC实现原理1、隐式字段2、回滚日志UndoLog3、一致性视图ReadView1)什么时候生成?2)可见性判断3)可见性算法(属性)4)可见性算法(实现)5)可见性算法(小结)4、举例说明(版本链)三、MVCC与可重复读RR1、事务的启动时机2、事务A读取流程3
SpringBoot利用腾讯云COS实现图床
埃杰 - Agile
腾讯云 spring boot 云计算
SpringBoot利用腾讯云COS实现图床功能说明Web往往利用图床来储存网页中的图片,使用图床有如下优点:1.减轻服务器压力:如果网页中的图片全部存储在自己的服务器上,就会增加服务器的负担,导致网页加载速度变慢,甚至会因为访问量过大而导致服务器崩溃。而使用图床可以将图片的加载和存储分离,减轻服务器的压力,提高网页的访问速度。2.方便管理和分享:使用图床可以方便地管理和分享图片。通过上传图片到图
网络安全实入门| 剖析HTTP慢速攻击(Slowloris)与Nginx防护配置
码农突围计划
网络安全入门及实战 web安全 http nginx 学习 安全 网络协议 网络
一、HTTP慢速攻击的核心原理HTTP慢速攻击(如Slowloris)是一种应用层拒绝服务攻击(DoS),其核心在于合法但缓慢地占用服务器资源,导致正常请求无法被处理。攻击者通过以下方式实现目标:协议漏洞利用:利用HTTP协议对请求完整性的依赖,例如不发送完整的请求头(如缺少\r\n\r\n结尾标识),使服务器持续等待数据。连接资源耗尽:通过建立大量半开连接(如设置Keep-Alive),占用服务
应急响应靶场——web3 ——知攻善防实验室
前景需要:小苕在省护值守中,在灵机一动情况下把设备停掉了,甲方问:为什么要停设备?小苕说:我第六感告诉我,这机器可能被黑了。这是他的服务器,请你找出以下内容作为通关条件:1.攻击者的两个IP地址2.隐藏用户名称3.黑客遗留下的flag【3个】虚拟机登录:账号:Administrator密码:xj@1234561.攻击者的两个IP地址D盾扫一下,发现已知后门查到后门含有404.php查找日志(此ip
深入剖析MYSQL MVCC多版本并发控制+ReadView视图快照规避幻读问题
LiRuiJie
MySQL mysql 数据库
一、剖析MVCC底层如何实现1.MVCC的目标在高并发场景下,MVCC实现:能力描述读写并发读不会阻塞写,写也不会阻塞读(大多数SELECT是非阻塞的)一致性视图每个事务看到的数据是其开始时的一致状态高性能避免频繁加锁,减少锁竞争开销2.InnoDB如何实现MVCCInnoDB使用以下两部分实现MVCC:UndoLog(撤销日志):用于保存数据变更前的旧版本ReadView(读视图):用于判断当前
MySQL EXPLAIN 关键字详解
烟沙九洲
数据库 mysql 数据库
EXPLAIN是用于分析SQL查询的执行计划。它能揭示MySQL如何执行查询(如是否使用索引、表连接顺序等),帮助我们定位性能瓶颈。基本用法EXPLAINSELECT*FROMusersWHEREage>25;输出列列名说明关键值示例id查询标识符(相同id表示同组查询,执行顺序从上到下;不同id值越大优先级越高)1(主查询)、2(子查询)select_type查询类型SIMPLE(无子查询)、P
寻路算法作品集
勤奋的大熊猫
Python学习之路 Python 寻路算法
寻路算法作品集正文初始点与结尾点均具有方向性的自动寻路算法(不包含限制点)正文初始点与结尾点均具有方向性的自动寻路算法(不包含限制点)如果大家觉得有用,就点个赞让更多的人看到吧~
Linux Docker 防火墙设置 放通 MySQL(3306) Redis(6379) 端口
LinuxDocker防火墙设置放通MySQL(3306)Redis(6379)端口,使用firewalld防火墙或iptables,因此尝试重新启动firewalld服务,添加防火墙规则,并检查防火墙状态。以下是详细步骤:1.启动firewalld服务首先启动firewalld服务:sudosystemctlstartfirewalldsudosystemctlenablefirewalld2.
Python 开发:Conda 环境的远程访问配置
Python编程之道
python conda 开发语言 ai
Python开发:Conda环境的远程访问配置关键词:Python、Conda、远程访问、环境管理、SSH、JupyterNotebook、服务器配置摘要:本文详细介绍了如何在远程服务器上配置和管理Conda环境,实现高效的远程Python开发。我们将从基础概念入手,逐步讲解SSH连接、端口转发、JupyterNotebook远程访问等关键技术,并提供完整的配置方案和实战代码示例。文章还涵盖了安全
MySQL索引失效场景
烟沙九洲
数据库 mysql 数据库
MySQL索引优化是提升查询性能的关键手段之一,但有时使用不当会导致索引失效。今天我们一起来看看哪些情况下索引会失效。1、联合索引没有使用最左前缀失效示例:联合索引(a,b,c)SELECT*FROMtableWHEREb=1ANDc=2;--❌索引失效正确写法:WHEREa=?--✅WHEREa=?ANDb=?--✅WHEREa=?ANDb=?ANDc=?--✅--ps:MySQL对=条件的列,
如何在Ubuntu上检查MySQL是否启动并放开3306端口
好奇的菜鸟
服务器 数据库 ubuntu mysql adb
在使用Ubuntu系统时,MySQL数据库是许多开发人员和系统管理员的常用工具。本文将详细介绍如何在Ubuntu上检查MySQL是否启动,以及如何放开MySQL默认的3306端口,以便允许外部访问。一、检查MySQL是否启动在进行任何操作之前,首先需要确认MySQL服务是否已经启动。以下是几种检查MySQL是否启动的方法:1.使用systemctl命令systemctl是Linux系统中用于管理服
详解DHCP服务工作原理及配置案例
学堂在线
Linux系统 网络技术(交换路由) linux 运维 DHCP服务
一.DHCP概述DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)是一个主机IP简化分配管理的TCP/IP协议,用户通过DHCP服务器动态的分配给客户端IP地址及其他环境的配置工作,包括IP地址、子网掩码、网关和DNS等。DHCP基于服务器/客户端模式,当客户机启动时,自动与DHCP服务器通信,要求提供自动分配IP地址的服务,而安装了DHCP的服务器则会
dify 默认端口被占用,更改端口号
你喜欢喝可乐吗?
ubuntu LLM deep learning 服务器 运维 人工智能 ubuntu
sudodockercompose-pdifyup-d在Ubuntu服务器上部署dify平台时,遇到以下错误:Errorresponsefromdaemon:driverfailedprogrammingexternalconnectivityonendpointdify-nginx-1(a9734951328f585778afbdbed279a81ca9ccebf8b4ba97d587216f5
开发者关心的那些事
圣子足道
ios 游戏 编程 apple 支付
我要在app里添加IAP,必须要注册自己的产品标识符(product identifiers)。产品标识符是什么?
产品标识符(Product Identifiers)是一串字符串,它用来识别你在应用内贩卖的每件商品。App Store用产品标识符来检索产品信息,标识符只能包含大小写字母(A-Z)、数字(0-9)、下划线(-)、以及圆点(.)。你可以任意排列这些元素,但我们建议你创建标识符时使用
负载均衡器技术Nginx和F5的优缺点对比
bijian1013
nginx F5
对于数据流量过大的网络中,往往单一设备无法承担,需要多台设备进行数据分流,而负载均衡器就是用来将数据分流到多台设备的一个转发器。
目前有许多不同的负载均衡技术用以满足不同的应用需求,如软/硬件负载均衡、本地/全局负载均衡、更高
LeetCode[Math] - #9 Palindrome Number
Cwind
java Algorithm 题解 LeetCode Math
原题链接:#9 Palindrome Number
要求:
判断一个整数是否是回文数,不要使用额外的存储空间
难度:简单
分析:
题目限制不允许使用额外的存储空间应指不允许使用O(n)的内存空间,O(1)的内存用于存储中间结果是可以接受的。于是考虑将该整型数反转,然后与原数字进行比较。
注:没有看到有关负数是否可以是回文数的明确结论,例如
画图板的基本实现
15700786134
画图板
要实现画图板的基本功能,除了在qq登陆界面中用到的组件和方法外,还需要添加鼠标监听器,和接口实现。
首先,需要显示一个JFrame界面:
public class DrameFrame extends JFrame { //显示
linux的ps命令
被触发
linux
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行
Android 音乐播放器 下一曲 连续跳几首歌
肆无忌惮_
android
最近在写安卓音乐播放器的时候遇到个问题。在MediaPlayer播放结束时会回调
player.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.reset();
Log.i("H
java导出txt文件的例子
知了ing
java servlet
代码很简单就一个servlet,如下:
package com.eastcom.servlet;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.net.URLEncoder;
import java.sql.Connection;
import java.sql.Resu
Scala stack试玩, 提高第三方依赖下载速度
矮蛋蛋
scala sbt
原文地址:
http://segmentfault.com/a/1190000002894524
sbt下载速度实在是惨不忍睹, 需要做些配置优化
下载typesafe离线包, 保存为ivy本地库
wget http://downloads.typesafe.com/typesafe-activator/1.3.4/typesafe-activator-1.3.4.zip
解压r
phantomjs安装(linux,附带环境变量设置) ,以及casperjs安装。
alleni123
linux spider
1. 首先从官网
http://phantomjs.org/下载phantomjs压缩包,解压缩到/root/phantomjs文件夹。
2. 安装依赖
sudo yum install fontconfig freetype libfreetype.so.6 libfontconfig.so.1 libstdc++.so.6
3. 配置环境变量
vi /etc/profil
JAVA IO FileInputStream和FileOutputStream,字节流的打包输出
百合不是茶
java核心思想 JAVA IO操作 字节流
在程序设计语言中,数据的保存是基本,如果某程序语言不能保存数据那么该语言是不可能存在的,JAVA是当今最流行的面向对象设计语言之一,在保存数据中也有自己独特的一面,字节流和字符流
1,字节流是由字节构成的,字符流是由字符构成的 字节流和字符流都是继承的InputStream和OutPutStream ,java中两种最基本的就是字节流和字符流
类 FileInputStream
Spring基础实例(依赖注入和控制反转)
bijian1013
spring
前提条件:在http://www.springsource.org/download网站上下载Spring框架,并将spring.jar、log4j-1.2.15.jar、commons-logging.jar加载至工程1.武器接口
package com.bijian.spring.base3;
public interface Weapon {
void kil
HR看重的十大技能
bijian1013
提升 能力 HR 成长
一个人掌握何种技能取决于他的兴趣、能力和聪明程度,也取决于他所能支配的资源以及制定的事业目标,拥有过硬技能的人有更多的工作机会。但是,由于经济发展前景不确定,掌握对你的事业有所帮助的技能显得尤为重要。以下是最受雇主欢迎的十种技能。 一、解决问题的能力 每天,我们都要在生活和工作中解决一些综合性的问题。那些能够发现问题、解决问题并迅速作出有效决
【Thrift一】Thrift编译安装
bit1129
thrift
什么是Thrift
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and s
【Avro三】Hadoop MapReduce读写Avro文件
bit1129
mapreduce
Avro是Doug Cutting(此人绝对是神一般的存在)牵头开发的。 开发之初就是围绕着完善Hadoop生态系统的数据处理而开展的(使用Avro作为Hadoop MapReduce需要处理数据序列化和反序列化的场景),因此Hadoop MapReduce集成Avro也就是自然而然的事情。
这个例子是一个简单的Hadoop MapReduce读取Avro格式的源文件进行计数统计,然后将计算结果
nginx定制500,502,503,504页面
ronin47
nginx 错误显示
server {
listen 80;
error_page 500/500.html;
error_page 502/502.html;
error_page 503/503.html;
error_page 504/504.html;
location /test {return502;}}
配置很简单,和配
java-1.二叉查找树转为双向链表
bylijinnan
二叉查找树
import java.util.ArrayList;
import java.util.List;
public class BSTreeToLinkedList {
/*
把二元查找树转变成排序的双向链表
题目:
输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。
要求不能创建任何新的结点,只调整指针的指向。
10
/ \
6 14
/ \
Netty源码学习-HTTP-tunnel
bylijinnan
java netty
Netty关于HTTP tunnel的说明:
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/socket/http/package-summary.html#package_description
这个说明有点太简略了
一个完整的例子在这里:
https://github.com/bylijinnan
JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
coder_xpf
jquery json map val()
JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
数据库查询出来的map有一个字段为空
通过System.out.println()输出 JSONUtil.serialize(map): {"one":"1","two":"nul
Hibernate缓存总结
cuishikuan
开源 ssh javaweb hibernate缓存 三大框架
一、为什么要用Hibernate缓存?
Hibernate是一个持久层框架,经常访问物理数据库。
为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。
缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。
二、Hibernate缓存原理是怎样的?
Hibernate缓存包括两大类:Hib
CentOs6
dalan_123
centos
首先su - 切换到root下面1、首先要先安装GCC GCC-C++ Openssl等以来模块:yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel2、再安装ncurses模块yum -y install ncurses-develyum install ncurses-devel3、下载Erang
10款用 jquery 实现滚动条至页面底端自动加载数据效果
dcj3sjt126com
JavaScript
无限滚动自动翻页可以说是web2.0时代的一项堪称伟大的技术,它让我们在浏览页面的时候只需要把滚动条拉到网页底部就能自动显示下一页的结果,改变了一直以来只能通过点击下一页来翻页这种常规做法。
无限滚动自动翻页技术的鼻祖是微博的先驱:推特(twitter),后来必应图片搜索、谷歌图片搜索、google reader、箱包批发网等纷纷抄袭了这一项技术,于是靠滚动浏览器滚动条
ImageButton去边框&Button或者ImageButton的背景透明
dcj3sjt126com
imagebutton
在ImageButton中载入图片后,很多人会觉得有图片周围的白边会影响到美观,其实解决这个问题有两种方法
一种方法是将ImageButton的背景改为所需要的图片。如:android:background="@drawable/XXX"
第二种方法就是将ImageButton背景改为透明,这个方法更常用
在XML里;
<ImageBut
JSP之c:foreach
eksliang
jsp forearch
原文出自:http://www.cnblogs.com/draem0507/archive/2012/09/24/2699745.html
<c:forEach>标签用于通用数据循环,它有以下属性 属 性 描 述 是否必须 缺省值 items 进行循环的项目 否 无 begin 开始条件 否 0 end 结束条件 否 集合中的最后一个项目 step 步长 否 1
Android实现主动连接蓝牙耳机
gqdy365
android
在Android程序中可以实现自动扫描蓝牙、配对蓝牙、建立数据通道。蓝牙分不同类型,这篇文字只讨论如何与蓝牙耳机连接。
大致可以分三步:
一、扫描蓝牙设备:
1、注册并监听广播:
BluetoothAdapter.ACTION_DISCOVERY_STARTED
BluetoothDevice.ACTION_FOUND
BluetoothAdapter.ACTION_DIS
android学习轨迹之四:org.json.JSONException: No value for
hyz301
json
org.json.JSONException: No value for items
在JSON解析中会遇到一种错误,很常见的错误
06-21 12:19:08.714 2098-2127/com.jikexueyuan.secret I/System.out﹕ Result:{"status":1,"page":1,&
干货分享:从零开始学编程 系列汇总
justjavac
编程
程序员总爱重新发明轮子,于是做了要给轮子汇总。
从零开始写个编译器吧系列 (知乎专栏)
从零开始写一个简单的操作系统 (伯乐在线)
从零开始写JavaScript框架 (图灵社区)
从零开始写jQuery框架 (蓝色理想 )
从零开始nodejs系列文章 (粉丝日志)
从零开始编写网络游戏 
jquery-autocomplete 使用手册
macroli
jquery Ajax 脚本
jquery-autocomplete学习
一、用前必备
官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/
当前版本:1.1
需要JQuery版本:1.2.6
二、使用
<script src="./jquery-1.3.2.js" type="text/ja
PLSQL-Developer或者Navicat等工具连接远程oracle数据库的详细配置以及数据库编码的修改
超声波
oracle plsql
在服务器上将Oracle安装好之后接下来要做的就是通过本地机器来远程连接服务器端的oracle数据库,常用的客户端连接工具就是PLSQL-Developer或者Navicat这些工具了。刚开始也是各种报错,什么TNS:no listener;TNS:lost connection;TNS:target hosts...花了一天的时间终于让PLSQL-Developer和Navicat等这些客户
数据仓库数据模型之:极限存储--历史拉链表
superlxw1234
极限存储 数据仓库 数据模型 拉链历史表
在数据仓库的数据模型设计过程中,经常会遇到这样的需求:
1. 数据量比较大; 2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等; 3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态, 比如,查看某一个用户在过去某一段时间内,更新过几次等等; 4. 变化的比例和频率不是很大,比如,总共有10
10点睛Spring MVC4.1-全局异常处理
wiselyman
spring mvc
10.1 全局异常处理
使用@ControllerAdvice注解来实现全局异常处理;
使用@ControllerAdvice的属性缩小处理范围
10.2 演示
演示控制器
package com.wisely.web;
import org.springframework.stereotype.Controller;
import org.spring