Thank you very much.

Enrico Olivelli <[email protected]> 于2019年7月30日周二 下午12:56写道:

>
>
> Il mar 30 lug 2019, 04:17 Wei Liu <[email protected]> ha scritto:
>
>> Thank you very much for your explanation.
>>
>> I think the current design is therefore a single writer, who writes the
>> same message to multiple bookies  in parallel(no leader) and the server
>> updates lac only rely on client submit.
>> It may result in delay in receiving the last message or in user usage
>> complexity.
>>
>
> If you have a continuous stream of data from the writer you get a great
> throughput and all of the guarantees of BK.
>
> If you have very few writes you have to do what I said before .
>
> If you are experiencing low throughput consider using the asynchronous API
> and tune you journal settings on the bookie
>
> Enrico
>
>
>
>> Enrico Olivelli <[email protected]> 于2019年7月29日周一 下午7:07写道:
>>
>>> Hello Wei Liu,
>>> This is about the core feature of BookKeeper, that is the Last
>>> AddConfirmed Protocol (LAC for friends).
>>>
>>> BookKeeper guarantees to the readers that once you read an entry you
>>> will always be able to read it.
>>> The reader is able to "see"  the entries only after it has the guarantee
>>> that the writer has received the acknowledgement of a successful write with
>>> an quorum of bookies.
>>>
>>> In order to make it possible the writer "piggy backs" the id of the
>>> LastAddConfirmed entry to the bookies and the reader then is able to use
>>> this value (by reading it with readLastAddConfirmed) in order to have this
>>> reference id.
>>>
>>> You have these ways to get your work done:
>>> 1) write no-operation entries to the ledger, this will make the LAC
>>> advance even in absence of "application" entries
>>> 2) use the "ExplicitLAC" feature, that is a background activity that
>>> sends the current LastAddConfirmed to the bookies even in absence of writes
>>> after a configurable delay (this is like option 1 but is it automatic, but
>>> it is still not available in the new API)
>>> 3) use readUnconfirmedEntries: this bypasses the LAC protocol at all, so
>>> you can read every entry, but you will need to use an out-of-band channel
>>> to pass the id of the entries to read
>>>
>>> I hope that helps
>>>
>>> Enrico
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Il giorno lun 29 lug 2019 alle ore 12:49 Wei Liu <[email protected]>
>>> ha scritto:
>>>
>>>>
>>>> Dear All :
>>>>
>>>>          1) First create ledger, add msg 1, 2, 3 into the ledger
>>>>          2) Do not close the current ledger;
>>>>          3) Received the msg 1 and 2;
>>>>          4) Received the msg 3 after closed the ledger;
>>>>
>>>>          I want to know how to read the last message without close the
>>>> current ledger?
>>>>
>>>>         Thanks~
>>>> --
>>>> 一个人只拥有今生今世是不够的,
>>>> 他还应该拥有诗意的世界。
>>>>
>>>>        [email protected]
>>>>
>>>
>>
>> --
>> 一个人只拥有今生今世是不够的,
>> 他还应该拥有诗意的世界。
>>
>>        [email protected]
>>
>

-- 
一个人只拥有今生今世是不够的,
他还应该拥有诗意的世界。

       [email protected]

Reply via email to