我目前在Heroku中运行了一个app(node.js),使用Heroku Connect连接到Salesforce来读/写数据。
Heroku Connect基本上拥有Salesforce中所选数据的副本,该数据通过Streaming API引入。
我的应用程序立即写入HC PostgreSQL数据库,该数据库立即写入Salesforce。
这会添加一个唯一的参考字段,该字段也会立即在Salesforce中生成,但是此信息会延迟反馈给Heroku Connect。
我不确定延迟是因为流API还是Heroku Connect,但我不确定如何最小化/删除此延迟,以便Heroku Connect立即使用新生成的字段进行更新。
请看下面的图表,显示什么是即时的以及发生延迟的地方:
答案 0 :(得分:2)
Salesforce中的出站流是异步的...这意味着延迟是正常的。请阅读" Integration Patterns and Practices"更多细节。我不确定他们描述的哪种策略符合您的需求,但至少您有一些参考。希望它有所帮助。
答案 1 :(得分:1)
我认为,这种延迟的原因可能是socket& amp;重新连接超时(了解有关Streaming API超时的更多信息here)。如果您的Salesforce方面的解决方案不常生成事件,则客户端可能会失去连接,并且每次都需要重新连接,并且可能会浪费您观察到的时间。这种情况的可能解决方案是在Salesforce端生成虚假事件(没有实际数据)以保持活动连接,但您需要关心达到另一个Streaming API限制(例如,24小时内的事件数量)。有关限制的详细信息,请参阅Salesforce documentation。
这只是一个想法,您需要进行一些基准测试并收集一些统计信息,以便更好地了解Salesforce& Heroku Connect会在您的案例中进行互动。