首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

百分点推荐引擎——从需求到架构

需求 当下,个性化时代的潮流势不可挡,业界普遍意识到了推荐是网站的一项基本服务。但是,人们对推荐该如何来做,也就是推荐技术本身,还不甚了解。我们经常会遇到这样的疑问:“购买过该商品的用户还购买过哪些商品这种推荐,不是一个SQL语句就搞定了吗?”其实不然,推荐技术远远不是这么简单。广义上讲,推荐技术属于数据挖掘和机器学习范畴,这也意味着好的推荐服务依赖于科学的推荐算法和大量的学习数据。对于电子商务和资讯网站来讲,想在推荐技术领域精耕细作,研发高端的推荐算法并应用到海量数据上是非常困难的。正是在这样的背景下,百

07

dotnet 为大型应用接入 ApplicationStartupManager 启动流程框架

对于大型的应用软件,特别是客户端应用软件,应用启动过程中,需要执行大量的逻辑,包括各个模块的初始化和注册等等逻辑。大型应用软件的启动过程都是非常复杂的,而客户端应用软件是对应用的启动性能有所要求的,不同于服务端的应用软件。设想,用户双击了桌面图标,然而等待几分钟,应用才启动完毕,那用户下一步会不会就是点击卸载了。为了权衡大型应用软件在启动过程,既需要执行复杂的启动逻辑,又需要关注启动性能,为此过程造一个框架是一个完全合理的事情。我所在的团队为启动过程造的库,就是本文将要和大家介绍我所在团队开源的 dotnetCampus.ApplicationStartupManager 启动流程框架的库

02

一些设计上的基本常识

最近给团队新人讲了一些设计上的常识,可能会对其它的新人也有些帮助, 把暂时想到的几条,先记在这里。 1. API与SPI分离 框架或组件通常有两类客户,一个是使用者,一个是扩展者, API(Application Programming Interface)是给使用者用的, 而SPI(Service Provide Interface)是给扩展者用的, 在设计时,尽量把它们隔离开,而不要混在一起, 也就是说,使用者是看不到扩展者写的实现的, 比如:一个Web框架,它有一个API接口叫Action, 里面有个execute()方法,是给使用者用来写业务逻辑的, 然后,Web框架有一个SPI接口给扩展者控制输出方式, 比如用velocity模板输出还是用json输出等, 如果这个Web框架使用一个都继承Action的VelocityAction和一个JsonAction做为扩展方式, 要用velocity模板输出的就继承VelocityAction,要用json输出的就继承JsonAction, 这就是API和SPI没有分离的反面例子,SPI接口混在了API接口中, 合理的方式是,有一个单独的Renderer接口,有VelocityRenderer和JsonRenderer实现, Web框架将Action的输出转交给Renderer接口做渲染输出。

01

15.6 亿元、交换机大单:华为、中兴、锐捷、新华三 4 家分羹

2022年5月19日,中国联合网络通信有限公司、联通数字科技有限公司发布《2022年中国联通数据中心交换机集中采购项目》招标公告。 项目概况:基于公司“大联接、大计算、大数据、大应用、大安全”五大主责主业的战略,保障联通CT、IT云、业务云等业务建设需求,现启动新一轮数据中心交换机集采工作。 本项目为集中招标项目。本次采购数据中心交换机包含汇聚交换机和接入交换机两类。 汇聚交换机包含框式汇聚交换机和盒式汇聚交换机。框式汇聚交换机按业务槽位区分,设置3个典配模型(典配1、2、3);盒式汇聚交换机按端口规格区分

02
领券