Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以使用像ApacheDS这样的LDAP服务器作为桌面应用程序的持久性解决方案吗?_Java_Database_Ldap_Apacheds - Fatal编程技术网

Java 我可以使用像ApacheDS这样的LDAP服务器作为桌面应用程序的持久性解决方案吗?

Java 我可以使用像ApacheDS这样的LDAP服务器作为桌面应用程序的持久性解决方案吗?,java,database,ldap,apacheds,Java,Database,Ldap,Apacheds,一个家伙建议我用ApacheDS代替我的数据库(MySQL),你可以找到讨论 我对LDAP和ApacheDS完全陌生(事实上,我昨天对它一无所知),我搜索了一下,读了一些文章,终于找到了 将LDAP视为一种网络协议(如果是的话),使用像ApacheDS这样的LDAP服务器作为桌面应用程序的持久性解决方案是可能的还是明智的选择 LDAP不需要应用服务器(比如tomcat)来运行吗? 你能帮我点灯吗:) thnxLDAP需要运行LDAP服务,如ApacheDS、OpenLDAP等。它不需要任何其他东

一个家伙建议我用ApacheDS代替我的数据库(MySQL),你可以找到讨论 我对LDAP和ApacheDS完全陌生(事实上,我昨天对它一无所知),我搜索了一下,读了一些文章,终于找到了

将LDAP视为一种网络协议(如果是的话),使用像ApacheDS这样的LDAP服务器作为桌面应用程序的持久性解决方案是可能的还是明智的选择

LDAP不需要应用服务器(比如tomcat)来运行吗? 你能帮我点灯吗:)
thnx

LDAP需要运行LDAP服务,如ApacheDS、OpenLDAP等。它不需要任何其他东西

与SQL数据库相比,LDAP有两个优点

一个是更精细的访问控制,例如,您可以有一个“列”,它可以由“管理员”组中的任何人更新,并且只能由用户及其经理读取。LDAP数据库可以实现您的安全策略,以确保它是可集中审核的

LDAP数据库往往具有更好的查询和读取性能(有时是一个数量级),但写入性能要低得多(有时也是一个数量级)。这是基于这样的假设,即您使用它查找详细信息,例如用户名/密码的频率远远高于您更改它们的频率


出于这个原因,我不会使用LDAP数据库进行日志记录。

对于部署LDAP,您必须仅使用LDAP服务器。例如openldap或ApacheDS。 我使用openldap作为web应用程序的持久性解决方案,它很有效。
有一个重要的区别:sql是关系,而ldap是树

LDAP作为用户以外的其他对象的数据存储有很多用途。事实上,LDAP通常被认为是最早的NoSQL服务器之一。 我知道一家电话会议软件供应商使用LDAP目录服务器取代SQL数据库以获得高可用性和分发。由于他们的软件部署在世界各地的多个地方,单一的数据库无法扩展,并在网络层面产生了问题。通过LDAP和服务器的多主机复制功能,他们能够在每个位置都有一台服务器,以控制复制流,甚至利用数据的分布式特性来增加服务。 基于Java的LDAP目录服务器,如ApacheDS或OpenDJ(OpenDJ.org),为您提供了部署的灵活性,甚至可以嵌入Java应用程序(如Web应用程序)中

最后,虽然LDAP服务器是为多读少写而设计的,但服务器现在能够进行大量的写操作(尽管我不会将它们用于只写的活动,如日志记录)。例如,OpenDJ已经在一个1000万用户的数据库上以每秒15000次的修改进行了测试。同样的配置每秒能够处理60000次以上的搜索。公平地说,JVM堆大小是32GB

问候,


Ludovic.

hmm,关于读写速度的好提示,我认为树的本质导致了这种差异。不是吗?我没有使用LDAP进行日志记录,该应用程序是一种小型银行应用程序(比银行简单得多),我正在用java开发,正如您所知,java在桌面应用程序中并不是很好,因此,我正在尽可能地调整它的性能。我原以为大多数性能问题都与GUI的更新有关。否则,Java没有理由在i7桌面或i7服务器上运行得更慢。(您是否尝试过使用
-server
选项;)我的观点是,由于易于与Windows、Office和Outlook集成,因此.NET在桌面上更受欢迎。GUI对windows用户来说似乎很友好。Java通常用于台式机上,这些都不重要,可移植性更重要。(我使用了一个只在32位windows上运行的.NET应用程序,而不是64位windows,我们不得不为它购买一台笔记本电脑,因为我们所有的PC都是64位的)Java不仅是可移植的windows vs Linux,而且在所有windows变体之间都是可移植的。我曾见过.NET产品(由拥有大量IT资源的公司生产),我想知道像eclipse这样的应用程序在windows中如何比其他应用程序具有更好的用户体验,这可能是因为它不仅仅使用标准库。但我也希望如此:我假设您的意思是
for
而不是
foe
(意思是“是”;)很高兴看到LDAP可以用于不仅仅是用户管理。我今天发现了LDAP,正如我在马赛的公司考虑使用它一样,它不仅用于管理我们用户的身份验证和访问权限,而且用于我们的客户联系人。如果将我们的基础架构在LDAP服务器和MySQL数据库服务器之间拆分,以获取其余的web应用程序数据,那么我应该如何使这两个数据存储保持同步?存储在数据库中的客户机业务实体需要链接到存储在LDAP服务器中的客户机实体。我简直不敢相信!什么!?有一家叫ForgeRock的公司提供这种服务吗?它是基于这个开源平台的?哦,拉拉。。。看看他们的视频,团队似乎在那里玩得很开心。这些产品可以满足我的要求。看来OpenIDM上的教程系列是我前进的方向!