title: Spring Reactive Repository: findById(ID) vs. findById(Publisher<ID>)
body: <p>What ist better to create a fully non-blocking REST-Service?</p>
  <pre class="lang-java prettyprint-override"><code>Mono&lt;T&gt; findById(ID id);
  </code></pre>
  <p>or</p>
  <pre class="lang-java prettyprint-override"><code>Mono&lt;T&gt; findById(Publisher&lt;ID&gt; id);
  </code></pre>
  <p>Is the second method less blocking?</p>
  <p>Here is an example:</p>
  <pre class="lang-java prettyprint-override"><code>@GetMapping
  public Mono&lt;UserProfile&gt; getUserProfile(Mono&lt;Authentication&gt; authentication) {
       return reactiveUserProfileRepository.findById(
            authentication.map(auth -&gt; auth.getName()));
  }
  </code></pre>
  <p>Or is it good enough to use an object as parameter?</p>
  <pre class="lang-java prettyprint-override"><code>public Mono&lt;UserProfile&gt; getUserProfile(Authentication authentication) {
  ...
  </code></pre>