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]
>

Reply via email to