一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种分布式的反推荐系统及反推荐方法与流程

2021-12-07 21:35:00 来源:中国专利 TAG:


1.本发明具体属于互联网信息数据安全技术领域,具体地说,涉及一种分布式的反推荐系统及反推荐方法。


背景技术:

2.随着网络技术的发展,越来越多人使用网络来完成各项服务,如购物,阅读新闻等。而在使用厂商提供的这些服务的同时,用户的浏览记录、喜好、地理位置等信息在厂商面前暴露无遗。而厂商根据用户的这些信息对用户精准画像,做到了个性化推送。作为用户来说,收到的推送虽然越来越符合胃口,但也将用户困在了信息茧房之中。同时,用户的隐私也完全暴露于厂商面前。
3.隐私泄露是目前个性化推荐算法带来的隐患之一,很多互联网服务厂商在提供服务的同时就在同时获取用户的个人信息。市场上也有部分基于单机的反跟踪隐私保护工具,但其基本的原理是通过检测网站上的跟踪器,限制跟踪器。但由于提供服务的厂商能够准确地获取到你在他提供服务的网站上的浏览记录,因此该厂商仍能精准获知你的喜好。本方案提供一种分布式的反推荐算法,用户通过该系统提供的代理访问服务厂商的服务。当用户开始访问厂商提供的服务时,实际上是通过系统中随机的一个节点来转发,而每次访问服务都是通过不同的节点实现。对于系统中的一个节点来看,它接受来自多个客户端的访问请求,分次来自于多个客户的请求发送到厂商提供服务的服务器。对于厂商的服务器来说,它接受的是来自系统中某个节点的访问,而并非来自于单个用户的访问,因此厂商的推荐算法在此刻变得低效,对用户的隐私的获取变得更难了。
4.如专利申请号为cn201610809458.0,申请名称为一种基于移动代理系统的代理负载均衡方法的专利申请记载的方法,其存在以下缺陷:1.反跟踪插件缺陷:1)在本地浏览器上配置插件,仅能防止获取部分浏览历史。且会导致部分网站上部分功能不可用;2)仅针对浏览器设计,对于移动端的app等无能为力。
5.2.通过单节点的代理:1)通过代理访问,仅能防止厂商服务器获取真实ip或真实地理信息。若总是使用同一节点访问,浏览历史、兴趣爱好仍可被记录。


技术实现要素:

6.本发明针对现有技术的上述缺陷和需求,提出了一种分布式的反推荐系统及反推荐方法,让用户通过使用系统代理,随机分配主机来代理用户的访问行为,让推荐算法难以准确获取单个用户的访问历史、喜好等信息,做到保护用户隐私的效果。通过分布式的布局,系统中的物理主机可分布于世界各地,有效避免了通过地理信息来获取用户隐私的危害。
7.本发明具体实现内容如下:本发明提出了一种分布式的反推荐系统,用于接收厂商服务器的真实响应并转换为代理响应发送给客户端,还用于接收客户端的真实请求并转换为代理请求发送给厂商服务器;所述反推荐系统内设置多个节点,每个所述节点中设置有用于选取节点的控制系统和用于与客户端和厂商服务器进行数据交互的计算系统;所述计算系统和控制系统都分别与客户端和厂商服务器连接。
8.一种分布式的反推荐方法,基于上述的一种分布式的反推荐系统,用于接收厂商服务器的真实响应并转换为代理响应发送给客户端,还用于接收客户端的真实请求并转换为代理请求发送给厂商服务器;所述反推荐方法具体包括以下步骤:步骤1:计算每个节点的状态;步骤2:根据节点的状态,随机选取一个状态较佳的节点为主节点,其他的为从节点;步骤3:接收厂商服务器的真实请求,发送到主节点中,通过控制系统对接收到的真实请求进行分配;步骤4:使用计算系统对真实请求进行处理,转换为代理请求后发送给厂商服务器;步骤5:厂商服务器接收到代理请求后作出真实响应;步骤6:接收厂商服务器发出的真实响应到主节点,通过主节点的控制系统对接收到的真实响应进行分配;步骤7:使用计算系统对真实响应进行处理,转换为代理响应后发送给客户端。
9.为了更好地实现本发明,进一步地,所述节点的状态信息具体包括节点是否存活、节点的使用率。
10.为了更好地实现本发明,进一步地,在考虑主节点的状态后,进行随机选取的方法具体为顺序随机k

算法。
11.为了更好地实现本发明,进一步地,所述步骤2中节点的选取采用一致性哈希算法进行主节点的选取。
12.为了更好地实现本发明,进一步地,所述步骤4对于真实请求进行转换时,设定白名单和黑名单,对指定域名、ip访问进行放行和拦截。
13.为了更好地实现本发明,进一步地,所述步骤7对于真实响应进行转换时,还要进行过滤处理:将真实响应暂存,进行过滤,将过滤后的真实响应发送到客户端。
14.本发明与现有技术相比具有以下优点及有益效果:通过分布式系统架构,对用户发出的请求进行随机节点代理,达到达到混淆用户历史记录、偏好的目的,有效反制服务提供厂商的推荐算法的效果。与已有的反跟踪插件相比,分布在各地的节点可以防止获取地理位置相关参数。多节点构成的高可用系统使得性能较好,做到负载均衡。同时,系统管理者可以配置白名单、黑名单对用户访问进行限制。
附图说明
15.图1为本发明系统大致框架结构示意图;图2为本发明流程示意图;
图3为本发明采用一致性哈希算法的示意图1;图4为本发明采用一致性哈希算法的示意图2;图5为本发明采用一致性哈希算法的示意图3;图6为本发明采用一致性哈希算法的示意图4。
具体实施方式
16.为了更清楚地说明本发明实施例的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,应当理解,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,因此不应被看作是对保护范围的限定。基于本发明中的实施例,本领域普通技术工作人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
17.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“设置”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;也可以是直接相连,也可以是通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
18.实施例1:本实施例提出了一种分布式的反推荐系统,如图1所示,用于接收厂商服务器的真实响应并转换为代理响应发送给客户端,还用于接收客户端的真实请求并转换为代理请求发送给厂商服务器;所述反推荐系统内设置多个节点,每个所述节点中设置有用于选取节点的控制系统和用于与客户端和厂商服务器进行数据交互的计算系统;所述计算系统和控制系统都分别与客户端和厂商服务器连接。
19.工作原理:通过分布式系统架构,对用户发出的请求进行随机节点代理,达到达到混淆用户历史记录、偏好的目的,有效反制服务提供厂商的推荐算法的效果。与已有的反跟踪插件相比,分布在各地的节点可以防止获取地理位置相关参数。多节点构成的高可用系统使得性能较好,做到负载均衡。同时,系统管理者可以配置白名单、黑名单对用户访问进行限制。
20.实施例2:本实施例提出了一种分布式的反推荐方法,如图1、图2所示,基于上述的一种分布式的反推荐系统,用于接收厂商服务器的真实响应并转换为代理响应发送给客户端,还用于接收客户端的真实请求并转换为代理请求发送给厂商服务器;所述反推荐方法具体包括以下步骤:步骤1:计算每个节点的状态;步骤2:根据节点的状态,随机选取一个状态较佳的节点为主节点,其他的为从节点;步骤3:接收厂商服务器的真实请求,发送到主节点中,通过控制系统对接收到的真实请求进行分配;步骤4:使用计算系统对真实请求进行处理,转换为代理请求后发送给厂商服务器;
步骤5:厂商服务器接收到代理请求后作出真实响应;步骤6:接收厂商服务器发出的真实响应到主节点,通过主节点的控制系统对接收到的真实响应进行分配;步骤7:使用计算系统对真实响应进行处理,转换为代理响应后发送给客户端。
21.工作原理:整个分布式反推荐算法系统由多个节点构成,对于客户端来说,它们是一个整体。整个系统由多个节点组成,节点由控制系统和计算系统组成。对于一个请求来说,首先由节点控制系统根据系统中节点的具体情况如是否存活,资源使用率等来判定该请求具体由哪个节点代理。对于系统的节点来说,节点之间相互通信已判定节点的状态,控制系统用于分配请求,计算系统用于处理请求。配置项说明如下表1所示:表11.系统中每个节点都有控制系统,但有主节点存在,优先由主节点分配请求。当主节点宕机掉线后,剩下的节点选择一个节点作为主节点。
22.2.节点选择通过顺序随机k

算法实现,可替换为其他算法。力求做到选择随机,且能达到负载均衡的效果,有效避免某一节点负荷过大。
23.3.当节点处理请求的时候,可以对请求进行处理。如管理者可设定白名单、黑名单,对指定域名、ip的访问进行拦截。对返回的请求也可进行过滤处理,如下载的文件可以进行暂存并扫描病毒。
24.实施例3:本实施例在上述实施例2的基础上,对于分布式多节点的系统,节点出现故障掉线是很常见的事情。在这种情况下,我们希望只会出现系统性能降低的情况,而不会出现系统完全不可用的情况。一致性哈希算法是一种特殊的哈希算法,它能够在移出或者添加服务器时,能够尽可能小地改变已存在的服务请求与处理请求服务器之间的映射关系。
25.本实施例的其他部分与上述实施例2相同,故不再赘述。
26.实施例4:本实施例在上述实施例2或3的基础上,1.一致性哈希算法通过一个叫作一致性哈希环的数据结构实现。这个环的起点是 0,终点是 2^32
ꢀ‑ꢀ
1,并且起点与终点连接,故这个环的整数分布范围是 [0, 2^32

1],如图3所示;假设我们有 "target1"、"target2"、"target3"、"target4" 四个需要代理的请求,四个代理请求对应的ip分别为ip_1、ip_2、ip_3、ip_4,然后使用哈希函数计算这四个代理请求对应的ip的 hash 值,值的范围是 [0, 2^32

1],将其放在环上,具体如图4所示;将节点(服务器)放置到哈希环上;使用同样的哈希函数,将节点(服务器)的ip作为键值进行哈希计算,并根据其值确定节点位置。假设我们有三个节点,对应的ip分别为ip_s1、ip_s2、ip_s3。
[0027]
将代理请求和节点的哈希都放到同一个哈希环之后,在哈希环上按照顺时针方向查找离这个代理请求最近的节点,即是处理这个代理请求的节点。以k3为例,顺时针方向最近的节点是s1。具体如图5所示。
[0028]
当服务器增加时,若新增的节点经过哈希后落在s4和k1之间,则只有代理请求k3受到影响,k3则由s4来处理。
[0029]
当服务器减少时(相对于初始状态),如s1节点掉线后,则k3、k1的请求转由s2处理。
[0030]
对于新增的节点,如新增的s4只分摊了s1的负载,并没有分摊其他节点的负载,故引入虚拟节点。通过将物理存在的节点虚拟为一组虚拟节点,如一个物理节点虚拟为两台虚拟节点。则三个物理节点可虚拟为六个节点。将这六个节点重新哈希后加入哈希环,代理请求通过选择最近的虚拟节点进而选择物理节点。如图6所示。
[0031]
本实施例的其他部分与上述实施例1

3任一项相同,故不再赘述。
[0032]
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献