- SkyWalking Server配置文件
五百年前FHYA
数据监测skywalking
application.yml/config/application.yml1、cluster集群相关配置#集群配置cluster:#选择哪一种集群模式selector:${SW_CLUSTER:standalone}#单机版standalone:#zk注册集群配置,zk版本保证在3.5以上,oap-libs中也对3.4进行了支持zookeeper:nameSpace:${SW_NAMESPACE
- Partition架构
m0_74825656
面试学习路线阿里巴巴架构
优质博文:IT-BLOG-CNPartition架构【1】结构:Region至少3个Zone,Zone内至少两个Partition,Partition内至少1个K8SMemberCluster;【2】故障域:故障域及核心链路至少Zone内收敛,甚至Partition收敛。故障域之间不应该有交互(状态流等);【3】变更规范:不同时变更多个Zone,甚至不同时变更多个Partition;【4】Fede
- Redis 同步机制详解
夏天的味道٥
Redisredis数据库缓存
Redis采用主从复制(Replication)机制来进行数据同步,同时在RedisCluster(集群模式)下也使用Gossip协议进行节点间数据同步和状态传播。主要的同步方式包括全量同步和增量同步。1.Redis主从同步机制(Replication)Redis通过主从复制(Master-SlaveReplication)保证数据一致性,支持多个从节点(Slave)复制一个主节点(Master)
- 【开源dcluster】一站式数据服务分析平台IDEA本地开发指南
dcluster开源
大数据
源码Gitee地址:https://gitee.com/zhenglv123456/dcluster在线文档:http://47.121.127.33:8090/在线体验:http://36.155.14.171:12345/dolphinscheduler/ui/login账号密码:test/test123源码启动1.前端启动进入dolphinscheduler-ui目录,执行以下命令npmin
- redisCluster集群相关查询结果详解
ghostp
redisredis
redisCluster集群相关查询结果详解进入redis进群查看集群信息CLUSTERINFO命令CLUSTERNODES命令info命令infoCommandstats命令查询服务器相关key的大小单个key查询某些前缀key批量查询进入redis进群在安装redis的机器上,找到安装目录的bin文件夹,使用以下命令来进入集群:[root@localhostbin]#./redis-cli-c
- redis架构系列——Cluster集群模式详解
庄隐
#组件redis架构
设计的主要特点和基本原理Redis集群目标高性能和线性可扩展性,最多可达1000个节点。没有代理,使用异步复制,并且不对值执行合并操作。可接受的写入安全程度:系统尝试(尽最大努力)保留来自与大多数主节点连接的客户端的所有写入。通常,有一些小窗口可能会丢失确认的写入。当客户端位于少数分区中时,丢失确认写入的窗口会更大。可用性:Redis集群能够在大多数主节点可访问的分区中继续存在,并且每个主节点至少
- Redis Cluster集群详解
高冷小伙
redis数据库缓存
数据分片(Sharding)哈希槽(HashSlot)机制:集群将数据划分为16384个哈希槽,每个键通过CRC16(key)%16384计算归属的槽。槽分配给多个主节点,每个节点负责一部分槽(例如:3节点集群中,每个节点可能管理约5461个槽)。动态槽分配:节点增减时,槽可动态迁移,支持在线扩容/缩容(如CLUSTERADDSLOTS命令)。跨槽操作限制:事务、Lua脚本需确保所有键在同一槽(可
- redis集群迅速搭建(个人学习和测试用)
yinhezhanshen
redis学习java
笔者使用ubuntu操作系统下载redis地址:Indexof/releases/,选择最新的版本下载。解压后进入目录,直接make就可以编译。编译成功后在src目录下会生成redis-server和redis-cli可执行文件。进入redis目录下的utils/create-cluster目录,执行./create-clusterstart,快速启动6个实例zy@zy-VirtualBox:~/
- 策略模式环境类的实现方式对比
-代号9527
JavaDev策略模式
文章目录1、策略模式2、聚合策略类实现方式一3、聚合策略类实现方式二4、对比5、补充:ApplicationContextAware接口1、策略模式近期工作中,需要处理4.x和5.x两个版本的数据,所以自然想到的是策略模式,写一个抽象类,然后两个版本分别实现抽象类,以后也好扩展。publicinterfaceClusterMetaDataProcessor{voidprocessData();}p
- 【YashanDB 知识库】yasboot 集群状态命令登录失败问题
数据库程序员
【标题】yasboot集群状态命令登录失败问题【问题分类】功能使用【关键字】yasboot、集群状态、无效用户名/密码、sys用户、null密码【问题描述】用户在执行yasbootclusterstatus-cyashan-d命令时遇到错误,系统提示“invalidusername/password,usersyscan'tloginwithnullpassword”,表明sys用户无法使用空密码
- AI人工智能机器学习之聚类分析
rockfeng0
人工智能机器学习sklearn
1、概要 本篇学习AI人工智能机器学习之聚类分析,以KMeans、AgglomerativeClustering、DBSCAN为例,从代码层面讲述机器学习中的聚类分析。2、聚类分析-简介聚类分析是一种无监督学习的方法,用于将数据集中的样本划分为不同的组(簇),使得同一组中的样本相似度较高,而不同组之间的样本相似度较低。sklearn.cluster提供了多种聚类算法K均值聚类(K-MeansCl
- Cassini_Network-Aware Job Schedulingin Machine Learning Clusters
一只积极向上的小咸鱼
机器学习人工智能
这篇论文介绍了CASSINI,一种用于机器学习(ML)集群的网络感知作业调度器。研究背景背景介绍:这篇文章的研究背景是深度学习数据集和模型规模的不断增长,对高效GPU集群的需求日益增加。分布式机器学习训练工作负载的通信开销占据了训练迭代时间的很大一部分,而现有的ML调度器往往忽略了ML训练作业的通信模式。研究问题:该问题的研究目标是开发一种简单而有效的方法,能够在网络链路中高效地放置多个ML作业,
- docker-compose -volumes 两种不同定义方式
胖胖胖胖胖虎
Dockerdockerhadoopbigdata
学习docker-compose部署hadoop集群、看到docker-compose一种不同volumes定义方式version:"3"services:namenode:image:bde2020/hadoop-namenode:2.0.0-hadoop2.7.4-java8volumes:-namenode:/hadoop/dfs/nameenvironment:-CLUSTER_NAME=
- Oracle 高可用性与数据保护
鱼弦
人工智能时代oracle数据库
Oracle高可用性与数据保护介绍Oracle提供了一系列高可用性和数据保护技术,以确保数据库系统在各种故障情况下继续运行,并保护数据免受损坏或丢失。这些技术包括集群与实时应用集群(RAC)、数据卫士(DataGuard)和闪回技术。集群与实时应用集群(RAC)基本概念RAC:RealApplicationClusters允许多个服务器同时访问一组Oracle数据库实例。通过这种方式,RAC提供了
- 四、spark集群架构
weixin_34411563
大数据开发工具
spark集群架构官方文档:http://spark.apache.org/docs/latest/cluster-overview.html集群架构我们先看这张图这张图把spark架构拆分成了两块内容:1)spark应用程序:即左边的DriverProgram这块;2)spark集群:即右边的ClusterManager和另外两个WorkerNode;这样的结构,我们大概可以猜测一下spark是
- Spark Standalone集群架构
htfenght
sparkspark
北风网spark学习笔记SparkStandalone集群架构SparkStandalone集群集群管理器,clustermanager:Master进程,工作节点:Worker进程搭建了一套Hadoop集群(HDFS+YARN)HDFS:NameNode、DataNode、SecondaryNameNodeYARN:ResourceManager、NodeManagerSpark集群(Spark
- Spark----Spark 在不同集群中的架构
XiaodunLP
Spark
Spark注重建立良好的生态系统,它不仅支持多种外部文件存储系统,提供了多种多样的集群运行模式。部署在单台机器上时,既可以用本地(Local)模式运行,也可以使用伪分布式模式来运行;当以分布式集群部署的时候,可以根据自己集群的实际情况选择Standalone模式(Spark自带的模式)、YARN-Client模式或者YARN-Cluster模式。Spark的各种运行模式虽然在启动方式、运行位置、调
- 对比学习小综述
wintercoming111
学习
对比学习的目标是将相似样本的表示(Representation)拉近,不相似样本的表示拉远。通过数据增强、损失函数、表示学习目标等步骤实现。分类(1)基于单视角的方法(InstanceDiscrimination)典型代表:SimCLR,MoCo特点:将每个样本视为一个独立类,无需额外的标注信息。适用场景:数据无标注或弱标注的场景。(2)基于聚类的方法(Clustering-BasedContra
- 解决 kubeasz 安装k8s集群跨节点pod 无法使用cluster ip通讯问题
CHEN_RUI_2200
k8s运维kubernetesdocker容器
问题描述使用kubeasz搭建k8s集群后使用的配置文件#'etcd'clustershouldhaveoddmember(s)(1,3,5,...)[etcd]192.168.xx.22#masternode(s)[kube_master]192.168.xx.22#worknode(s)[kube_node]192.168.xx.9192.168.xx.22#[optional]harbors
- redis 集群 节点起不来_深入学习Redis:集群
翻书汪
redis集群节点起不来
写的时间有点长,喜欢的朋友点赞关注收藏素质三连,谢谢前言Redis集群解决了上述问题,实现了较为完善的高可用方案。本文将详细介绍集群,主要内容包括:集群的作用;集群的搭建方法及设计方案;集群的基本原理;客户端访问集群的方法;以及其他实践中需要的集群知识(集群扩容、故障转移、参数优化等)。一、集群的作用集群,即RedisCluster,是Redis3.0开始引入的分布式存储方案。集群由多个节点(No
- Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)
coding996
Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)https://segmentfault.com/a/1190000020849841Redis的集群方案大致有三种:1)rediscluster集群方案;2)master/slave主从方案;3)哨兵模式来进行主从替换以及故障恢复。一、sentinel哨兵模式介绍Sentinel(哨兵)是用于监控redis集
- 数据标注中的归类与定义,从聚类,相关,关联,回归四个方面分析
小宝哥Code
人工智能训练师聚类回归数据挖掘
在数据标注和AI训练过程中,数据的归类与定义是关键步骤,不同的数据分析方法可以用于不同的场景。本文从**聚类(Clustering)、相关(Correlation)、关联(Association)、回归(Regression)**四个角度探讨数据标注的优化,并结合Python代码示例进行说明。1.聚类(Clustering)1.1概念聚类是一种无监督学习方法,它将相似的数据点分为同一个组,而无需预
- 分布式之Gossip协议
点滴~
分布式
目录Gossip协议Redis如何通过Gossip协议进行通信的?Gossip协议参考:Gossip协议详解|JavaGuideRedis进阶-高可拓展:分片技术(RedisCluster)详解|Java全栈知识体系Redis如何通过Gossip协议进行通信的?在RedisCluster中使用Gossip协议来实现节点之间的通信
- RabbitMQ的脑裂(网络分区)问题
劉煥平CHN
RabbitMQrabbitmq网络分布式
问题描述:MnesiareportsthatthisRabbitMQclusterhasexperiencedanetworkpartition.Thereisariskoflosingdata一、什么是MQ脑裂?网络分区如果另一个节点在一段时间内(默认为60秒)无法与其联系,则节点会确定其对等方是否关闭。如果两个节点重新接触,并且都认为另一个节点已关闭,则节点将确定发生了分区。当网络分区就位时,
- Open3d处理点云数据-改进的欧式聚类分割算法(六)
点云客户
算法聚类机器学习
1.概述1.1传统欧式聚类分割算法欧式聚类算法(EuclideanClustering)是一种将点云数据分割成不同聚类(簇)的算法。它是点云分割中的一种常用方法,旨在将距离比较近的点分为同一簇,从而识别出不同的物体或结构。这个算法主要适用于包含较小噪音和具有一定距离差异的点云数据。基本思想:(1)选择一个种子点(SeedPoint)作为当前簇的起始点。(2)遍历所有未分类的点,计算它们与种子点的距
- 文献阅读(part2)--Towards K-means-friendly spaces Simultaneous deep learning and clustering
GUI Research Group
机器学习python深度聚类
学习笔记,仅供参考文章目录AbstractIntroductionBackgroundandRelatedWorksProposedFormulationOptimizationProcedureInitializationviaLayer-wisePre-Training(通过分层预训练进行初始化)AlternatingStochasticOptimizationExperiments合成数据演
- yarn模式运行spark作业所有属性详解
weixin_34248487
大数据
摘要:Spark参数调优,可以大大提高工作中程序的运行效率。下面简单介绍一下这些常用的调优参数属性名称默认值含义spark.yarn.am.memory512mclient模式下,YARNApplicationMaster使用的内存总量spark.yarn.am.cores1client模式下,ApplicationMaster使用的cpu数量spark.driver.cores1cluster模
- spark sql随记
cxy1991xm
spark
1、sparksql访问hive将hive-site.xml放入到${SPARK_HOME}/conf下如果是sparkonyarn的cluster模式,由于driver是运行于哪个executor未知,因此在spark-defaults.conf中指定参数spark.yarn.dist.filesxxx/hive-site.xml
- Spark源码分析
陈同学�
sparkbigdatascala
Spark源码分析SparkonYarnclientCluster本质区别,driver位置不同1)有哪些不同得进程?2)分别有什么作用?3)Spark作业执行流程是什么样的跑yarn有--masteryarnCoarseGrainedExecutorBackend默认executor有两个CoarseGrainedExecutorBackendSparkSubmitApplicationMast
- clickhouse集群搭建
fusugongzi
clickhouse服务器linux
准备三台机器,192.168.20.7,192.168.20.8,192.168.20.10用于搭建clickhouse集群。本次搭建的集群,为三副本的,即一份数据会在三台机器上分别存储,搭建集群只是为了容灾。1.在192.168.20.7上操作在clickhouseconfig.d目录下新建cluster.xml,内容如下91811/data/clickhouse/coordination/lo
- linux系统服务器下jsp传参数乱码
3213213333332132
javajsplinuxwindowsxml
在一次解决乱码问题中, 发现jsp在windows下用js原生的方法进行编码没有问题,但是到了linux下就有问题, escape,encodeURI,encodeURIComponent等都解决不了问题
但是我想了下既然原生的方法不行,我用el标签的方式对中文参数进行加密解密总该可以吧。于是用了java的java.net.URLDecoder,结果还是乱码,最后在绝望之际,用了下面的方法解决了
- Spring 注解区别以及应用
BlueSkator
spring
1. @Autowired
@Autowired是根据类型进行自动装配的。如果当Spring上下文中存在不止一个UserDao类型的bean,或者不存在UserDao类型的bean,会抛出 BeanCreationException异常,这时可以通过在该属性上再加一个@Qualifier注解来声明唯一的id解决问题。
2. @Qualifier
当spring中存在至少一个匹
- printf和sprintf的应用
dcj3sjt126com
PHPsprintfprintf
<?php
printf('b: %b <br>c: %c <br>d: %d <bf>f: %f', 80,80, 80, 80);
echo '<br />';
printf('%0.2f <br>%+d <br>%0.2f <br>', 8, 8, 1235.456);
printf('th
- config.getInitParameter
171815164
parameter
web.xml
<servlet>
<servlet-name>servlet1</servlet-name>
<jsp-file>/index.jsp</jsp-file>
<init-param>
<param-name>str</param-name>
- Ant标签详解--基础操作
g21121
ant
Ant的一些核心概念:
build.xml:构建文件是以XML 文件来描述的,默认构建文件名为build.xml。 project:每个构建文
- [简单]代码片段_数据合并
53873039oycg
代码
合并规则:删除家长phone为空的记录,若一个家长对应多个孩子,保留一条家长记录,家长id修改为phone,对应关系也要修改。
代码如下:
- java 通信技术
云端月影
Java 远程通信技术
在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、Burlap、Hessian、SOAP、EJB和JMS等,这些名词之间到底是些什么关系呢,它们背后到底是基于什么原理实现的呢,了解这些是实现分布式服务框架的基础知识,而如果在性能上有高的要求的话,那深入了解这些技术背后的机制就是必须的了,在这篇blog中我们将来
- string与StringBuilder 性能差距到底有多大
aijuans
之前也看过一些对string与StringBuilder的性能分析,总感觉这个应该对整体性能不会产生多大的影响,所以就一直没有关注这块!
由于学程序初期最先接触的string拼接,所以就一直没改变过自己的习惯!
- 今天碰到 java.util.ConcurrentModificationException 异常
antonyup_2006
java多线程工作IBM
今天改bug,其中有个实现是要对map进行循环,然后有删除操作,代码如下:
Iterator<ListItem> iter = ItemMap.keySet.iterator();
while(iter.hasNext()){
ListItem it = iter.next();
//...一些逻辑操作
ItemMap.remove(it);
}
结果运行报Con
- PL/SQL的类型和JDBC操作数据库
百合不是茶
PL/SQL表标量类型游标PL/SQL记录
PL/SQL的标量类型:
字符,数字,时间,布尔,%type五中类型的
--标量:数据库中预定义类型的变量
--定义一个变长字符串
v_ename varchar2(10);
--定义一个小数,范围 -9999.99~9999.99
v_sal number(6,2);
--定义一个小数并给一个初始值为5.4 :=是pl/sql的赋值号
- Mockito:一个强大的用于 Java 开发的模拟测试框架实例
bijian1013
mockito单元测试
Mockito框架:
Mockito是一个基于MIT协议的开源java测试框架。 Mockito区别于其他模拟框架的地方主要是允许开发者在没有建立“预期”时验证被测系统的行为。对于mock对象的一个评价是测试系统的测
- 精通Oracle10编程SQL(10)处理例外
bijian1013
oracle数据库plsql
/*
*处理例外
*/
--例外简介
--处理例外-传递例外
declare
v_ename emp.ename%TYPE;
begin
SELECT ename INTO v_ename FROM emp
where empno=&no;
dbms_output.put_line('雇员名:'||v_ename);
exceptio
- 【Java】Java执行远程机器上Linux命令
bit1129
linux命令
Java使用ethz通过ssh2执行远程机器Linux上命令,
封装定义Linux机器的环境信息
package com.tom;
import java.io.File;
public class Env {
private String hostaddr; //Linux机器的IP地址
private Integer po
- java通信之Socket通信基础
白糖_
javasocket网络协议
正处于网络环境下的两个程序,它们之间通过一个交互的连接来实现数据通信。每一个连接的通信端叫做一个Socket。一个完整的Socket通信程序应该包含以下几个步骤:
①创建Socket;
②打开连接到Socket的输入输出流;
④按照一定的协议对Socket进行读写操作;
④关闭Socket。
Socket通信分两部分:服务器端和客户端。服务器端必须优先启动,然后等待soc
- angular.bind
boyitech
AngularJSangular.bindAngularJS APIbind
angular.bind 描述: 上下文,函数以及参数动态绑定,返回值为绑定之后的函数. 其中args是可选的动态参数,self在fn中使用this调用。 使用方法: angular.bind(se
- java-13个坏人和13个好人站成一圈,数到7就从圈里面踢出一个来,要求把所有坏人都给踢出来,所有好人都留在圈里。请找出初始时坏人站的位置。
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class KickOutBadGuys {
/**
* 题目:13个坏人和13个好人站成一圈,数到7就从圈里面踢出一个来,要求把所有坏人都给踢出来,所有好人都留在圈里。请找出初始时坏人站的位置。
* Maybe you can find out
- Redis.conf配置文件及相关项说明(自查备用)
Kai_Ge
redis
Redis.conf配置文件及相关项说明
# Redis configuration file example
# Note on units: when memory size is needed, it is possible to specifiy
# it in the usual form of 1k 5GB 4M and so forth:
#
- [强人工智能]实现大规模拓扑分析是实现强人工智能的前奏
comsci
人工智能
真不好意思,各位朋友...博客再次更新...
节点数量太少,网络的分析和处理能力肯定不足,在面对机器人控制的需求方面,显得力不从心....
但是,节点数太多,对拓扑数据处理的要求又很高,设计目标也很高,实现起来难度颇大...
- 记录一些常用的函数
dai_lm
java
public static String convertInputStreamToString(InputStream is) {
StringBuilder result = new StringBuilder();
if (is != null)
try {
InputStreamReader inputReader = new InputStreamRead
- Hadoop中小规模集群的并行计算缺陷
datamachine
mapreducehadoop并行计算
注:写这篇文章的初衷是因为Hadoop炒得有点太热,很多用户现有数据规模并不适用于Hadoop,但迫于扩容压力和去IOE(Hadoop的廉价扩展的确非常有吸引力)而尝试。尝试永远是件正确的事儿,但有时候不用太突进,可以调优或调需求,发挥现有系统的最大效用为上策。
-----------------------------------------------------------------
- 小学4年级英语单词背诵第二课
dcj3sjt126com
englishword
egg 蛋
twenty 二十
any 任何
well 健康的,好
twelve 十二
farm 农场
every 每一个
back 向后,回
fast 快速的
whose 谁的
much 许多
flower 花
watch 手表
very 非常,很
sport 运动
Chinese 中国的
- 自己实践了github的webhooks, linux上面的权限需要注意
dcj3sjt126com
githubwebhook
环境, 阿里云服务器
1. 本地创建项目, push到github服务器上面
2. 生成www用户的密钥
sudo -u www ssh-keygen -t rsa -C "
[email protected]"
3. 将密钥添加到github帐号的SSH_KEYS里面
3. 用www用户执行克隆, 源使
- Java冒泡排序
蕃薯耀
冒泡排序Java冒泡排序Java排序
冒泡排序
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年6月23日 10:40:14 星期二
http://fanshuyao.iteye.com/
- Excle读取数据转换为实体List【基于apache-poi】
hanqunfeng
apache
1.依赖apache-poi
2.支持xls和xlsx
3.支持按属性名称绑定数据值
4.支持从指定行、列开始读取
5.支持同时读取多个sheet
6.具体使用方式参见org.cpframework.utils.excelreader.CP_ExcelReaderUtilTest.java
比如:
Str
- 3个处于草稿阶段的Javascript API介绍
jackyrong
JavaScript
原文:
http://www.sitepoint.com/3-new-javascript-apis-may-want-follow/?utm_source=html5weekly&utm_medium=email
本文中,介绍3个仍然处于草稿阶段,但应该值得关注的Javascript API.
1) Web Alarm API
&
- 6个创建Web应用程序的高效PHP框架
lampcy
Web框架PHP
以下是创建Web应用程序的PHP框架,有coder bay网站整理推荐:
1. CakePHP
CakePHP是一个PHP快速开发框架,它提供了一个用于开发、维护和部署应用程序的可扩展体系。CakePHP使用了众所周知的设计模式,如MVC和ORM,降低了开发成本,并减少了开发人员写代码的工作量。
2. CodeIgniter
CodeIgniter是一个非常小且功能强大的PHP框架,适合需
- 评"救市后中国股市新乱象泛起"谣言
nannan408
首先来看百度百家一位易姓作者的新闻:
三个多星期来股市持续暴跌,跌得投资者及上市公司都处于极度的恐慌和焦虑中,都要寻找自保及规避风险的方式。面对股市之危机,政府突然进入市场救市,希望以此来重建市场信心,以此来扭转股市持续暴跌的预期。而政府进入市场后,由于市场运作方式发生了巨大变化,投资者及上市公司为了自保及为了应对这种变化,中国股市新的乱象也自然产生。
首先,中国股市这两天
- 页面全屏遮罩的实现 方式
Rainbow702
htmlcss遮罩mask
之前做了一个页面,在点击了某个按钮之后,要求页面出现一个全屏遮罩,一开始使用了position:absolute来实现的。当时因为画面大小是固定的,不可以resize的,所以,没有发现问题。
最近用了同样的做法做了一个遮罩,但是画面是可以进行resize的,所以就发现了一个问题,当画面被reisze到浏览器出现了滚动条的时候,就发现,用absolute 的做法是有问题的。后来改成fixed定位就
- 关于angularjs的点滴
tntxia
AngularJS
angular是一个新兴的JS框架,和以往的框架不同的事,Angularjs更注重于js的建模,管理,同时也提供大量的组件帮助用户组建商业化程序,是一种值得研究的JS框架。
Angularjs使我们可以使用MVC的模式来写JS。Angularjs现在由谷歌来维护。
这里我们来简单的探讨一下它的应用。
首先使用Angularjs我
- Nutz--->>反复新建ioc容器的后果
xiaoxiao1992428
DAOmvcIOCnutz
问题:
public class DaoZ {
public static Dao dao() { // 每当需要使用dao的时候就取一次
Ioc ioc = new NutIoc(new JsonLoader("dao.js"));
return ioc.get(