- mysql 双主 脑裂_mysql双主+keepalived
weixin_39789206
mysql双主脑裂
环境OS:centos7Mysql版本:mysql5.7Keepalived:keepalived-1.2.20Mysql-vip:192.168.41.100Mysql-master1:192.168.41.10Mysql-master2:192.168.41.11实验环境关闭防火墙规则firewall-cmd一、配置两台mysql互为主从该过程的第一部分就是master记录二进制日志。在每个事
- keepalived mysql双主架构图_MySQL双主+keepalived实现高可用
如果有片海
keepalivedmysql双主架构图
mysql+keepalived实现高可用+主主复制模式为了解决mysql的单点故障问题,衍生出很多mysql的高可用方案:keepalived+双主、MHA、PXC、MMM、Hearbeat+DRBD等,比较常用的一般是keepalived+双主,MHA和PXC在此搭建实验环境,实现keepalived+mysql双主模式。实验思路:两台MySQL互为主从关系(双主),通过keepalived配
- ElasticSearch 相关面试题
_Sincerely
ElasticSearchelasticsearch搜索引擎全文检索
ElasticSearch相关面试题为什么要使用Elasticsearch?Elasticsearch的master选举流程?Elasticsearch集群脑裂问题?为什么要使用Elasticsearch?系统中的数据,随着业务的发展,时间的推移,将会非常多,而业务中往往采用模糊查询进行数据的搜索,而模糊查询会导致查询引擎放弃索引,导致系统查询数据时都是全表扫描。在百万级别的数据库中,查询效率是非
- 突破Java面试(23-8) - Redis哨兵主备切换的数据丢失问题
JavaEdge
Github1数据丢失的两个场景主备切换的过程,可能会导致数据丢失1.1异步复制由于master=>slave的复制是异步的,所以可能有部分数据还没复制到slave,master就宕机,于是这些数据就丢失了image1.2脑裂导致脑裂,也就是说,某个master所在节点突然脱离正常的网络,无法和其他slave机器连接,但实际上master还运行着此时哨兵可能就会认为master宕机了,然后开启选举
- 产品经理关键思维和沟通主体
MaxWen
正所谓思维决定高度,格局决定结局。产品经理应该将换位思考作为自己第一思维模式,用户角度考虑产品的使用场景,辅助业务解决产品的推广问题,重点关注市场调研、推广和产品开发落地。IT项目建设过程中,大量的业务人员一遇到系统对接就需要拉上技术人员沟通谈交互谈接口,对于同一个功能开发人员总会收到矛盾需求。高额的沟通和支持成本加上错综负责的需求,系统还没脑裂程序员自己先脑裂了,业务说系统没有实现自己的功能,开
- keepalived
Dream visit
企业服务keepalived高可用
文章目录一、Keepalived高可用概述VRRP原理二、Keepalived高可用安装配置安装keepalived配置master配置backup对比master与Backup的keepalived配置区别启动Master和Backup节点的keepalived三、高可用keepalived抢占式与非抢占式四、高可用keepalived故障脑裂脑裂故障原因脑裂故障现象解决脑裂故障方案五、高可用k
- mysql脑裂原因及解决方法
柯西极限存在准则
数据库mysql数据库
MySQL这种关系型数据库,在高并发环境下,可能会出现脑裂问题。一、MySQL脑裂的原因MySQL脑裂是由于分布式系统中多个MySQL实例之间出现网络分区而导致的。具体来说,当网络分区发生时,不同的MySQL实例可能会在相同的时间内接收到相同的请求,但由于网络分区的存在,这些实例之间无法进行通信和同步,因此会导致数据不一致的情况出现。二、MySQL脑裂的解决方法1.配置MySQL高可用性集群为了防
- Redis核心技术与实战【学习笔记】 - 24.Redis 脑裂
陈建111
Redis核心技术学习redisRedis脑裂
简述所谓脑裂,就是指在主从集群中,同时有两个主节点,它们都能接收写请求。而脑裂最直接的影响就是客户端不知道该往哪个主节点写入数据,结果就是不同的客户端会往不同的主机诶点上写入数据。而且,严重的话,脑裂会导致数据丢失。在使用主从集群时,曾遇到过这样一个问题:主从集群有1个主库、5个从库和3个哨兵实例,在使用过程中,发现客户端发送的一些数据丢失了,这直接影响了业务层的数据可靠性。通过一系列的问题排查,
- Keepalived + DR 集群
HuaLuLemon
LVSLVSKeepalived
目录1、KeepaliveVRRP说明故障切换工作原理核心组件2、Keepalived+DR集群拓扑规划前期准备配置Httpd服务配置Nginx服务配置LVS主node_01配置LVS从node_02测试LVS集群测试主备切换3、Keepalived脑裂现象4、Keepalived心态检测TCP_CHECK检测HTTP_GET检测MISC_CHECK检测5、非抢占模式1、KeepaliveKeep
- 详解SpringCloud微服务技术栈:深入ElasticSearch(4)——ES集群
布布要成为最负责的男人
微服务技术全家桶springcloud微服务elasticsearch集群分布式java
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:详解SpringCloud微服务技术栈:深入ElasticSearch(3)——数据同步(酒店管理项目)订阅专栏:微服务技术全家桶希望文章对你们有所帮助ElasticSearch本身就是分布式的,在这里将要讨论如何用3个docker容器来模拟实现ElasticSearch的集群搭建,并且提出集群会出现的脑裂问题并讨论解决方案。但是
- 【Kafka】服务器Broker与Controller详解
Ethan-running
#kafkakafka服务器分布式
这里写自定义目录标题Broker概述Broker总体工作流程Broker重要参数Controller为什么需要Controller具体作用数据服务Leader选举选举流程脑裂问题羊群效应触发leader选举Broker概述Kafka服务实例,负责消息的持久化、中转等功能。一个独立的Kafka服务器被就是一个broker。broker是集群的组成部分。每个集群都有一个broker同时充当了集群控制器
- 分布式协调服务-zookeeper
猿日记
分布式环境的特点分布性并发性程序运行过程中,并发性操作室很常见的。比如同一个分布式系统中的多个节点,同时访问一个共享资源。数据库、分布式存储无序性进程之间的消息通信,会出现顺序不一致问题分布式环境下面临的问题网络通信网络本身的不可靠性,因此会涉及到一些网络通信的问题网络分区(脑裂)当网络发生异常倒是分布式系统中部分节点之间的网络延时不断增大,最终导致组成分布式架构的所有节点,只有部分节点能正常通信
- Hadoop2.0架构及其运行机制,HA原理
Toner_唐纳
大数据
文章目录一、Hadoop2.0架构1.架构图2.HA1)NameNode主备切换2)watcher监听3)脑裂问题3.组件1.HDFS2.MapReduce3.Yarn1.组件2.调度流程一、Hadoop2.0架构1.架构图以上是hadoop2.0的架构图,根据hadoop1.0的不足,改进而来。1.NameNode节点,由原先的一个变成两个,解决单点故障问题2.JournalNode集群,处理E
- 03-Redis缓存高可用集群
野心与梦
redis专栏缓存redis数据库
文章目录1、Redis集群方案比较2、Redis高可用集群搭建redis集群搭建Java操作redis集群4、Redis集群原理分析槽位定位算法跳转重定位Redis集群节点间的通信机制gossip通信的10000端口网络抖动Redis集群选举原理分析集群脑裂数据丢失问题集群是否完整才能对外提供服务Redis集群为什么至少需要三个master节点,并且推荐节点数为奇数?哨兵leader选举流程Red
- 作业-第05周--课堂-Day22-磁盘管理 -Ⅲ
MineG
Day22课堂笔记2)parted命令案例1:需求:RAID5大小6T,已经装了系统了,额外添加4块2T盘现有一个做了RAID5的硬盘,要求分三个区,硬盘总分区大小:6.2T/data04.8T/data11T4G(无需格式化,作DRBD+Hearbeat+MySQL高可用集群)parted/dev/sdbmklabelgpt#忽略提示===============================
- Redis脑裂现象
灼烧的疯狂
缓存redis数据库缓存
什么是Redis的脑裂现象当Redis主从集群环境出现两个主节点为客户端提供服务,这时客户端请求命令可能会发生数据丢失的情况。脑裂出现的场景场景一主从哨兵集群中如果当发生主从集群切换时,那么一定是超过预设quorum数量的哨兵和主库连接超时了,这时哨兵集群才会将主库判断为客观下线,然后哨兵开始选举新的主节点,进行故障转移,转移完毕后客户端和新的主节点通信恢复正常请求。如果在哨兵进行选举,故障转移的
- Paxos,Raft,ZAB的差异对比
李兆龙的博客
分布式
本作品采用知识共享署名-非商业性使用-相同方式共享4.0国际许可协议进行许可。本作品(李兆龙博文,由李兆龙创作),由李兆龙确认,转载请注明版权。文章目录引言背景概述差异对比Leader选举如何选举选举信息选举的触发上一轮次的数据如何处理上一轮未提交的日志脑裂问题请求处理过程一般流程日志的连续性请求的连续性一点想法总结引言对于ZAB与Paxos协议并不了解的我写这篇文章属实有点误导人的感觉,所以把这
- Zookeeper集群"脑裂"问题
b335eb9201c3
关于集群中的"脑裂"问题,之前已经在这里详细介绍过,下面重点说下Zookeeper脑裂问题的处理办法。ooKeeper是用来协调(同步)分布式进程的服务,提供了一个简单高性能的协调内核,用户可以在此之上构建更多复杂的分布式协调功能。脑裂通常会出现在集群环境中,比如ElasticSearch、Zookeeper集群,而这些集群环境有一个统一的特点,就是它们有一个大脑,比如ElasticSearch集
- 大数据学长面试之OPPO面试题
大数据小理
大数据1大数据面试职场和发展
OPPO面试题学长1OPPO-实时处理工程师。一面试官,他拿了多个人的简历,边翻边问。1)技术部分(1)SparkStreaming消费方式及区别,Spark读取HDFS的数据流程(2)Kafka高性能(3)Hive调优,数据倾斜(4)Zookeeper怎么避免脑裂,什么是脑裂。(5)Redis的基本类型,并介绍一下应用场景(6)最后会问一些Linux常用命令,比如怎么查进程,查IO运行内存等。还
- Zookeeper与Kafka基础概念和原理
weixin_34198797
运维大数据
1、zookeeper概念介绍在介绍ZooKeeper之前,先来介绍一下分布式协调技术,所谓分布式协调技术主要是用来解决分布式环境当中多个进程之间的同步控制,让他们有序的去访问某种共享资源,防止造成资源竞争(脑裂)的后果。这里首先介绍下什么是分布式系统,所谓分布式系统就是在不同地域分布的多个服务器,共同组成的一个应用系统来为用户提供服务,在分布式系统中最重要的是进程的调度,这里假设有一个分布在三个
- 码农的周末日常---2024/1/7
奔腾的码农
笔记笔记
今日天气晴温度适宜AM伴随着脑裂般的脑壳痛,morning,早上九点多的世界日常三连,等等,只能日常双连了,病号肝不动折腾了两个点,总算是挺过来了,不知道什么原因,可能是没睡好,做梦导致脑容量超标了(bushi)PM活过来了,下午当然要继续造,出去找朋友耍耍一条线做到30个站左右,好在天时地利座位充足出了站先炫了两个包子(芭比馒头),热腾腾的,足矣五点左右的电影票(三大队),七点多一点结束,焯,真
- Zookeeper集群"脑裂"问题
tracy_668
[TOC]Zookeeper集群节点为什么要部署成奇数zookeeper容错指的是:当宕掉几个zookeeper节点服务器之后,剩下的个数必须大于宕掉的个数,也就是剩下的节点服务数必须大于n/2,这样zookeeper集群才可以继续使用,无论奇偶数都可以选举leader。例如5台zookeeper节点机器最多宕掉2台,还可以继续使用,因为剩下3台大于5/2。至于为什么最好为奇数个节点?这样是为了以
- 2018-08-11《平凡的世界》第二部第七章至第十章
一枚高中生
好词:沾泥带土一五一十点点杠杠借本赚利忧心忡忡无可奈何两眼墨黑眉开眼笑撕脑裂胆奔涌不息破烂不堪目瞪口呆半信半疑心满意足没完没了面面相觑怒气冲冲破口大骂风水宝地哭鼻流水含糊不清将信将疑百般聊赖狗血喷头悄无声息破土而出大分大合宏大气魄大打出手不顾体面无可奈何毛头小子轰轰烈烈兴致勃勃七七八八皎洁如雪絮絮唠唠好句:1.眼前是一片麦芒似的黄色。毛翻翻浪头象无数拥挤在一起奔跑的野兽吼叫着从远方的峡谷中涌来,一
- Redis 哨兵主备切换的数据丢失问题
流光的咸鱼
redis数据库缓存
导致数据丢失的两种情况主备切换的过程,可能会导致数据丢失:异步复制导致的数据丢失因为master->slave的复制是异步的,所以可能有部分数据还没复制到slave,master就宕机了,此时这部分数据就丢失了。脑裂导致的数据丢失脑裂,也就是说,某个master所在机器突然脱离了正常的网络,跟其他slave机器不能连接,但是实际上master还运行着。此时哨兵可能就会认为master宕机了,然后开
- Redis之集群脑裂
小阳小朋友
redisredis数据库缓存
redis集群没有过半机制会有脑裂问题,网络分区导致脑裂后多个主节点对外提供写服务,一旦网络分区恢复,会将其中一个主节点变为从节点,这时会有大量数据丢失。规避方法可以在redis配置里加上参数(这种方法不可能百分百避免数据丢失,参考集群leader选举机制):min‐replicas‐to‐write1写数据成功最少同步的slave数量,这个数量可以模仿半数机制配置。例如:集群总共三个节点可以配置
- multipath 内核接口及框架介绍
内核新视界
linuxlinux云主机存储multipath
文章目录1云主机使用网络存储io流程2multipath介绍1云主机使用网络存储io流程对于一个云服务环境,大致会有网络节点,存储节点,计算节点,控制节点,其中虚拟云主机在计算节点工作,而虚拟云主机(qemu虚机)使用的存储一般通过ceph,drbd,mulitpch,iscsi使其在存储节点存储。(1)计算节点云主机访问本地/dev/vda,/dev/vdb…块设备,实际访问的是dm-mulit
- Keepalived 部署及配置
Gabriel_liao
负载均衡分布式linux
文章目录前言部署配置文件全局配置常用指令说明vrrp实例常用指令邮件通知配置实现LVS执行脚本检测脑裂解决方案前言keepalived的主要由vrrpstack、checkers、ipvswrapper以及控制组件配置文件分析器,IO复用器,内存管理这些组件组成,其中vrrpstack是用来实现vip的高可用;checkers用于基于不同协议对后端服务做检测,它两都是基于系统调用和SMTP协议来完
- 基于 DRBD 的 KVM 群集
IT-民工21110
服务器持续集成
基于DRBD的KVM群集说明:LinuxPlus.org给朋友的实验手册均是一个“骨架”。我们希望您在学习过程中,根据自己实验将其补充完整,从而形成自己专属的、更加详实的手册.1.环境准备1.1.拓扑结构1.2.操作系统安装修改了之前的kicksart文件,添加的HA的组件#KickstartfileforKVM+HA#17:352016/3/8通过CentOS-7-x86_64-DVD-1511
- Redis专题(持续更新)
Player
redis数据库缓存
03-VIP-Redis缓存高可用集群文章目录03-VIP-Redis缓存高可用集群正文1、Redis集群方案比较2、Redis高可用集群搭建redis集群搭建3、Java操作redis集群4、Redis集群原理分析槽位定位算法跳转重定位gossip通信的10000端口网络抖动Redis集群选举原理分析集群脑裂数据丢失问题集群是否完整才能对外提供服务Redis集群为什么至少需要三个master节点
- Shell脚本-bin/bash: 解释器错误: 没有那个文件或目录-完整路径执行-“/”引发的脑裂
老覃头
bash开发语言
引起该不适的一种可能以及解决方案,网上较多,比如:但按以上方式操作,并经过查看,发现仍然未能解决问题。因为两种方式执行,有一种能成功,有一种不能,刚开始未怀疑是文件问题,最后经测试,发现问题原因以及修复方法,记录如下:注意下图标红两处的差异,差异一个“/”。至此,Shell脚本-bin/bash:解释器错误:没有那个文件或目录-完整路径执行时提示错误问题得到解决。
- jvm调优总结(从基本概念 到 深度优化)
oloz
javajvmjdk虚拟机应用服务器
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
- 【Scala十六】Scala核心十:柯里化函数
bit1129
scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系 1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a
- HashMap
dalan_123
java
HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。
1、数据结构
在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据
- Java Swing如何实时刷新JTextArea,以显示刚才加append的内容
周凡杨
java更新swingJTextArea
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。
问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现
- servlet或struts的Action处理ajax请求
g21121
servlet
其实处理ajax的请求非常简单,直接看代码就行了:
//如果用的是struts
//HttpServletResponse response = ServletActionContext.getResponse();
// 设置输出为文字流
response.setContentType("text/plain");
// 设置字符集
res
- FineReport的公式编辑框的语法简介
老A不折腾
finereport公式总结
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)
- linux mysql 数据库乱码的解决办法
墙头上一根草
linuxmysql数据库乱码
linux 上mysql数据库区分大小写的配置
lower_case_table_names=1 1-不区分大小写 0-区分大小写
修改/etc/my.cnf 具体的修改内容如下:
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/va
- 我的spring学习笔记6-ApplicationContext实例化的参数兼容思想
aijuans
Spring 3
ApplicationContext能读取多个Bean定义文件,方法是:
ApplicationContext appContext = new ClassPathXmlApplicationContext(
new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml
- mysql 基准测试之sysbench
annan211
基准测试mysql基准测试MySQL测试sysbench
1 执行如下命令,安装sysbench-0.5:
tar xzvf sysbench-0.5.tar.gz
cd sysbench-0.5
chmod +x autogen.sh
./autogen.sh
./configure --with-mysql --with-mysql-includes=/usr/local/mysql
- sql的复杂查询使用案列与技巧
百合不是茶
oraclesql函数数据分页合并查询
本片博客使用的数据库表是oracle中的scott用户表;
------------------- 自然连接查询
查询 smith 的上司(两种方法)
&
- 深入学习Thread类
bijian1013
javathread多线程java多线程
一. 线程的名字
下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。
同时,Thr
- JSON串转换成Map以及如何转换到对应的数据类型
bijian1013
javafastjsonnet.sf.json
在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。
一.fastjson实例
JsonUtil.java
package com.study;
impor
- 【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架
bit1129
spring
HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成
在
【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中
- 【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析
bit1129
Mahout
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information re
- nginx三种获取用户真实ip的方法
ronin47
随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。
实例环境: 用户IP 120.22.11.11
- java-判断二叉树是不是平衡
bylijinnan
java
参考了
http://zhedahht.blog.163.com/blog/static/25411174201142733927831/
但是用java来实现有一个问题。
由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass
import ljn.help.*;
public class BalancedBTree {
- BeanUtils.copyProperties VS PropertyUtils.copyProperties
诸葛不亮
PropertyUtilsBeanUtils
BeanUtils.copyProperties VS PropertyUtils.copyProperties
作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业
- [金融与信息安全]最简单的数据结构最安全
comsci
数据结构
现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?
从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么
- vi区段删除
Cwind
linuxvi区段删除
区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。
vi概述
引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。
vi区段删除步骤:
1. 在末行模式下使用:set nu显示行号
非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行
- 清除tomcat缓存的方法总结
dashuaifu
tomcat缓存
用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。
出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
<meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu
- 不要盲目的在项目中使用LESS CSS
dcj3sjt126com
Webless
如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》
不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。
比如它的引用功能
?
.rounded_corners{
- [入门]更上一层楼
dcj3sjt126com
PHPyii2
更上一层楼
通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。
本章将介绍一些有助于更好使用 Yii 的资源:
- Apache HttpClient使用详解
eksliang
httpclienthttp协议
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会
- zxing二维码扫描功能
gundumw100
androidzxing
经常要用到二维码扫描功能
现给出示例代码
import com.google.zxing.WriterException;
import com.zxing.activity.CaptureActivity;
import com.zxing.encoding.EncodingHandler;
import android.app.Activity;
import an
- 纯HTML+CSS带说明的黄色导航菜单
ini
htmlWebhtml5csshovertree
HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航
在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:
<!DOCTYPE html >
<html >
<head>
<title>HoverTree
- fastjson初始化对性能的影响
kane_xie
fastjson序列化
之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。
网上的说法:
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
- 基于Mybatis封装的增删改查实现通用自动化sql
mengqingyu
DAO
1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。
2.支持自定义注解包括主键生成、列重复验证、列名、表名等
3.支持批量插入、批量更新、批量删除
<bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic
- js控制input输入框的方法封装(数字,中文,字母,浮点数等)
qifeifei
javascript js
在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/
funct
- java 计时器应用
tangqi609567707
javatimer
mport java.util.TimerTask; import java.util.Calendar; public class MyTask extends TimerTask { private static final int
- erlang输出调用栈信息
wudixiaotie
erlang
在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。
也可以用这个函数:erlang:get_s