Albianj2 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Albianj2 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Albianj2 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 BSD
开发语言 Java 查看源码 »
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 xuhf
适用人群 未知
收录时间 2016-04-26

软件简介

Albianj是一套分布式统一框架。主要面向海量数据处理、海量数据 访问、并解决互联网开发中经常会碰到的数据海量增长问题,也一并解决 互联网开发团队 中,因开发人员的水平参差不齐而导致的代码质量不可控问题。它主要有简单小巧的IoC, ORM,数据路由,缓存集成,分布式唯一id等等功能。

albianj诞生于2011年,它的创建并不是为了解决某个公司的问题,而纯粹是为了度过我的 业余时间。当时的想法其实很简单,就是想把我这几年来对于互联网的理解用技术的形式 表现出来。其实2011年写完v1.0后,除了我把它开源了以外,我就再也没有去管过它。直 到2015年的4月份,当时我已经在阅文集团任职,我们需要把阅文集团的所有内容都统一起 来,形成一个内容中心。当确定下来要做这个内容中心的时候,我们面对的是亿级别的数 据和千万级别的访问量。我们想到了需要一个统一的框架来完成我们的工作。这个框架必 须满足几个条件:

1. 必须容易使用,必须容易维护,必须快速上手  
2. 必须可以方便的处理现有的海量的数据  
3. 必须能方便的进行业务的扩容  
4. 必须能抗住当前的访问量,并且能抗住未来5年左右的业务扩展说带来的访问量增长

从这些条件出发,我从记忆中翻出来了albianj(所以对于albianj的出身有疑问的同学就不 要猜疑了。albianj并不出身于盛大创新院,也不是从腾讯带出来的。而是完全自主开发的 )。当时albianj的主体已近全部完成,并不需要更多的修改,就是在易用性和可控制性上 还表现的不够好,我们又对albianj进行了扩展。形成了我们现在开源出来的albianj2.

后来,随着技术的发展,我们对于现有的腾讯文学、起点中文网等阅文集团旗下的站点也 进行了重构。在重构过程中,我们也都使用albianj作为底层框架来使用。

所以呢,从我们的使用的真实情况出发,albianj2是能抗住海量数据处理和大并发、大访 问量的。既然已近在我们的系统中得到了验证,我们现在把我们修改过的albianj2开源出 来,以方便大家使用。

附albianj2的功能列表

1. 一个简单的Service服务,比spring轻量很多很多  
2. 一个简单的ORM框架  
3. 数据路由服务  
4. 分布式事务服务(支持强、弱两种模型)  
5. 简单的缓存服务  
6. 统一的Id服务  
7. 日志服务(这部分有待扩展)  
8. 密码安全服务  
9. 简单的restful服务  
10. 一个轻量级的配置服务

Albianj2的适用范围:

albianj2主要的适用范围是互联网企业。并不是那么的适合传统行业。这个还得从两个行 业的特殊性说起。对于传统行业来说,他们更加注重的是业务的复杂性,所以这个特有的 业务会给数据库设计带来很大的烦恼和限制。传统行业基本上用户量固定,数据量固定, 增长量也是固定的,所以在一个系统搭建完毕之后,几乎很少会去动数据库设计,也不会 后期去对数据进行拆分。这些类似的种种都是因为传统行业特有的属性决定的。

而互联网就完全不一样了。互联网首先讲究的是快,快速的开发,快速的搭建。然后是讲 究架构重构简单。因为互联网企业经常会碰到数据爆发式增长,用户量井喷式涌入这些问 题。我们就会想法设法的保证系统的快速和稳定。对于数据库,也是会随着数据的增加需 要进行相应的拆库拆表。这些在传统行业不太碰到的问题在互联网行业看来就是家常便饭 的事情。而在业务开发上,互联网也比较特殊,互联网的表之间几乎很少有很复杂的关系 ,99%都是单表操作。所以互联网的模型最后就是演变成了单表+分库分表。而albianj就是 为了解决问题出现的。albianj不支持join,也不支持多表查询。因为这些对于一个互联网 系统来说,这些都会大大的损耗数据库的性能。数据库本来就是单点的存在,我们需要尽 可能快速的来访问数据库,所以在这些方面albianj做了很大的限制,这也导致了不是太符 合传统企业的业务。albianj2从开始设计的时候其实主要考虑的都是互联网的业务,albianj 几乎适合做互联网所有的业务,不管你是想阿里一样的电商还是想腾讯一样的社交。几乎 都可以选择使用albianj来作为基础框架。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(3)
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
Oracle MySQL Connectors组件安全漏洞
SQL注入
Oracle MySQL是美国甲骨文(Oracle)公司的一套开源的关系数据库管理系统。该数据库系统具有性能高、成本低、可靠性好等特点。MySQL Connectors是其中的一个连接使用MySQL的应用程序的驱动程序。 Oracle MySQL 5.1.34及之前版本的MySQL Connectors组件中的Connector/J子组件存在安全漏洞。远程攻击者可利用该漏洞读取、更新、插入或删除数据,影响数据的保密性和完整性。
CVE-2015-2575 MPS-2015-2026
2022-08-08 19:19
dom4j XML注入漏洞
XPath盲注
dom4j是一款支持DOM、SAX、JAXP和Java平台的用于处理XML文件的开源框架。 dom4j 2.1.1之前版本中的Class:Element存在安全漏洞,该漏洞源于程序没有验证输入。攻击者可通过指定XML文档中的属性或元素利用该漏洞执行篡改操作。
CVE-2018-1000632 MPS-2018-11300
2022-08-08 19:19
Fastjson < 1.2.60 版本拒绝服务漏洞
拒绝服务
Fastjson 是Java语言实现的快速JSON解析和生成器,在<1.2.60的版本中攻击者可通过精心构造的JSON请求,造成服务器内存和CPU等资源耗尽,最终系统宕机。 漏洞原因: fastjson处理\x转义字符不当,json中包含恶意构造的请求时可能引发OOM。
MPS-2019-28848
2022-08-08 19:19
XStream 任意代码执行
XStream 是一个简单的库,用于将对象序列化为 XML 并再次返回。在受影响的版本中,此漏洞可能允许远程攻击者仅通过操纵已处理的输入流来从远程主机加载和执行任意代码。没有用户受到影响,他们按照建议设置 XStream 的安全框架,白名单仅限于所需的最少类型。默认情况下,XStream 1.4.18 不再使用黑名单,因为它不能被保护用于一般用途。
CVE-2021-39154 MPS-2021-17815
2022-08-08 19:19
XStream 存在任意代码执行漏洞
XStream 是一个简单的库,用于将对象序列化为 XML 并再次返回。在受影响的版本中,此漏洞可能允许远程攻击者仅通过操纵已处理的输入流来从远程主机加载和执行任意代码。没有用户受到影响,他们按照建议设置 XStream 的安全框架,白名单仅限于所需的最少类型。默认情况下,XStream 1.4.18 不再使用黑名单,因为它不能被保护用于一般用途。
CVE-2021-39147 MPS-2021-17820
2022-08-08 19:19
XStream 存在反序列化漏洞
XStream是XStream(Xstream)团队的一个轻量级的、简单易用的开源Java类库,它主要用于将对象序列化成XML(JSON)或反序列化为对象。 XStream 1.4.16 之前版本存在安全漏洞,攻击者可利用该漏洞可以操纵已处理的输入流并替换或注入对象,从而导致本地主机上的文件被删除。
CVE-2021-21343 MPS-2021-3123
2022-08-08 19:19
Apache Log4j 安全漏洞
当攻击者对 Log4j 配置具有写访问权限时,Log4j 1.2 中的 JMSAppender 容易受到不受信任数据的反序列化。攻击者可以提供 TopicBindingName 和 TopicConnectionFactoryBindingName 配置,导致 JMSAppender 执行 JNDI 请求,从而以类似于 CVE-2021-44228 的方式执行远程代码。请注意,此问题仅在专门配置为使用 JMSAppender(不是默认设置)时影响 Log4j 1.2。 Apache Log4j 1.2 已于 2015 年 8 月结束生命周期。用户应升级到 Log4j 2,因为它解决了以前版本中的许多其他问题。
CVE-2021-4104 MPS-2021-38359
2022-08-08 19:19
Apache Commons Collections 远程代码执行漏洞
反序列化
Apache Commons Collections 是对Java 集合的扩展。 该组件从3.0起引入的InvokerTransformer类可被用于构造执行任意代码,作为反序列化等漏洞的跳板(gadget),从而执行任意系统命令。
MPS-2022-12767
2022-08-08 19:19
XStream 代码问题漏洞
XStream 是一个简单的库,用于将对象序列化为 XML 并再次返回。在受影响的版本中,此漏洞可能允许远程攻击者仅通过操纵已处理的输入流来从远程主机加载和执行任意代码。没有用户受到影响,他们按照建议设置 XStream 的安全框架,白名单仅限于所需的最少类型。默认情况下,XStream 1.4.18 不再使用黑名单,因为它不能被保护用于一般用途。
CVE-2021-39146 MPS-2021-17821
2022-08-08 19:19
XStream 反序列化远程代码执行漏洞
反序列化
XStream是XStream(Xstream)团队的一个轻量级的、简单易用的开源Java类库,它主要用于将对象序列化成XML(JSON)或反序列化为对象。 XStream 1.4.17及之前版本存在代码问题漏洞,远程攻击者可以通过操纵处理后的输入流,从远程主机加载和执行任意代码。
CVE-2021-39139 MPS-2021-17825
2022-08-08 19:19
XStream 存在反序列化漏洞
XStream是XStream(Xstream)团队的一个轻量级的、简单易用的开源Java类库,它主要用于将对象序列化成XML(JSON)或反序列化为对象。 XStream 1.4.16 之前版本存在代码问题漏洞,该漏洞源于WEB应用未充分验证请求是否来自可信用户。攻击者可利用该漏洞通过受影响客户端向服务器发送非预期的请求。
CVE-2021-21349 MPS-2021-3127
2022-08-08 19:19
XStream 远程代码执行漏洞
XStream是XStream(Xstream)团队的一个轻量级的、简单易用的开源Java类库,它主要用于将对象序列化成XML(JSON)或反序列化为对象。 XStream存在代码问题漏洞,该漏洞允许远程攻击者有足够的权限仅通过操纵处理后的输入流来执行主机的命令。
CVE-2021-29505 MPS-2021-7164
2022-08-08 19:19
Apache Log4j SQL注入漏洞
SQL注入
根据设计,Log4j 1.2.x 中的 JDBCAppender 接受 SQL 语句作为配置参数,其中要插入的值是来自 PatternLayout 的转换器。消息转换器 %m 可能总是包含在内。这允许攻击者通过将精心制作的字符串输入到记录的应用程序的输入字段或标题中来操纵 SQL,从而允许执行意外的 SQL 查询。请注意,此问题仅在专门配置为使用 JDBCAppender(不是默认设置)时才会影响 Log4j 1.x。从 2.0-beta8 版本开始,重新引入了 JDBCAppender,适当支持参数化 SQL 查询,并进一步自定义写入日志的列。 Apache Log4j 1.2 已于 2015 年 8 月结束生命周期。用户应升级到 Log4j 2,因为它解决了以前版本中的许多其他问题。
CVE-2022-23305 MPS-2022-1444
2022-08-08 19:19
XStream 命令注入漏洞
命令注入
XStream是XStream团队的一个轻量级的、简单易用的开源Java类库,它主要用于将对象序列化成XML(JSON)或反序列化为对象。 XStream中存在命令注入漏洞。该漏洞源于外部输入数据构造可执行命令过程中,网络系统或产品未正确过滤其中的特殊元素。攻击者可利用该漏洞执行非法命令。
CVE-2013-7285 MPS-2019-5201
2022-08-08 19:19
MySQL JDBC XXE漏洞
XXE
Oracle MySQL是美国甲骨文(Oracle)公司的一套开源的关系数据库管理系统。 Oracle MySQL 的 MySQL Connectors 产品中存在XXE漏洞,造成漏洞的原因主要是因为getSource方法未对传入的XML格式数据进行检验。导致攻击者可构造恶意的XML数据引入外部实体,造成XXE攻击。攻击者可能利用该漏洞进行任意文件读取。
CVE-2021-2471 MPS-2020-38350
2022-08-08 19:19
Apache Log4j 信任管理问题漏洞
证书验证不恰当
Apache Log4j是美国阿帕奇(Apache)基金会的一款基于Java的开源日志记录工具。 Apache Log4j中存在信任管理问题漏洞,该漏洞源于SmtpAppender没有验证主机名称与SMTPS连接的SSL/TLS证书是否匹配。攻击者可通过实施中间人攻击利用该漏洞拦截SMTPS连接,获取日志消息。
CVE-2020-9488 MPS-2020-6684
2022-08-08 19:19
XStream 任意代码执行
XStream 是一个简单的库,用于将对象序列化为 XML 并再次返回。在受影响的版本中,如果使用带有 Java 运行时版本 14 至 8 或安装了 JavaFX 的开箱即用版本,则此漏洞可能允许远程攻击者仅通过操纵已处理的输入流从远程主机加载和执行任意代码。没有用户受到影响,他们按照建议设置 XStream 的安全框架,白名单仅限于所需的最少类型。默认情况下,XStream 1.4.18 不再使用黑名单,因为它不能被保护用于一般用途。
CVE-2021-39153 MPS-2021-17816
2022-08-08 19:19
XStream 存在任意代码执行
XStream 是一个简单的库,用于将对象序列化为 XML 并再次返回。在受影响的版本中,此漏洞可能允许远程攻击者仅通过操纵已处理的输入流来从远程主机加载和执行任意代码。没有用户受到影响,他们按照建议设置 XStream 的安全框架,白名单仅限于所需的最少类型。默认情况下,XStream 1.4.18 不再使用黑名单,因为它不能被保护用于一般用途。
CVE-2021-39141 MPS-2021-17824
2022-08-08 19:19
XStream 代码问题漏洞
XStream 是一个 Java 库,用于将对象序列化为 XML 并再次返回。在 1.4.16 之前的 XStream 中,存在一个漏洞,该漏洞可能允许远程攻击者根据 CPU 类型或此类有效负载的并行执行在目标系统上分配 100% 的 CPU 时间,从而仅通过操纵处理过的输入来导致拒绝服务溪流。遵循建议设置 XStream 的安全框架的用户不会受到影响,白名单仅限于所需的最少类型。如果您依赖 XStream 的默认安全框架黑名单,则必须至少使用 1.4.16 版本。
CVE-2021-21341 MPS-2021-3124
2022-08-08 19:19
Apache Xalan-Java 权限许可和访问控制问题漏洞
权限、特权和访问控制
Apache Xalan-Java是美国阿帕奇(Apache)软件基金会的一款用于将XML文档转为HTML文档、文本文件txt或其他XML文档格式的XSLT处理器。 Apache Xalan-Java 2.7.1及之前版本的TransformerFactory中存在权限许可和访问控制问题漏洞,当使用FEATURE_SECURE_PROCESSING时,程序没有正确限制访问某些属性。远程攻击者可利用该漏洞绕过预期的限制,加载任意类或访问外部资源。
CVE-2014-0107 MPS-2014-1792
2022-08-08 19:19
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
3 评论
151 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部