100% нашли этот документ полезным (2 голоса)
25 просмотров

PDF Learn Microservices with Spring Boot 3: A Practical Approach Using Event-Driven Architecture, Cloud-Native Patterns, and Containerization 3rd Edition Moisés Macero García download

Containerization

Загружено:

tymonfykesa1
Авторское право
© © All Rights Reserved
Доступные форматы
Скачать в формате PDF, TXT или читать онлайн в Scribd
100% нашли этот документ полезным (2 голоса)
25 просмотров

PDF Learn Microservices with Spring Boot 3: A Practical Approach Using Event-Driven Architecture, Cloud-Native Patterns, and Containerization 3rd Edition Moisés Macero García download

Containerization

Загружено:

tymonfykesa1
Авторское право
© © All Rights Reserved
Доступные форматы
Скачать в формате PDF, TXT или читать онлайн в Scribd
Вы находитесь на странице: 1/ 37

Get the full ebook with Bonus Features for a Better Reading Experience on ebookmeta.

com

Learn Microservices with Spring Boot 3: A


Practical Approach Using Event-Driven
Architecture, Cloud-Native Patterns, and
Containerization 3rd Edition Moisés Macero García
https://ebookmeta.com/product/learn-microservices-with-
spring-boot-3-a-practical-approach-using-event-driven-
architecture-cloud-native-patterns-and-containerization-3rd-
edition-moises-macero-garcia-2/

OR CLICK HERE

DOWLOAD NOW

Download more ebook instantly today at https://ebookmeta.com


Learn Microservices
with Spring Boot 3
A Practical Approach Using Event-Driven
Architecture, Cloud-Native Patterns, and
Containerization

Third Edition

Moisés Macero García
Tarun Telang
Learn Microservices
with Spring Boot 3
A Practical Approach Using
Event-­Driven Architecture,
Cloud-Native Patterns,
and Containerization
Third Edition

Moisés Macero García


Tarun Telang
Learn Microservices with Spring Boot 3: A Practical Approach Using Event-Driven
Architecture, Cloud-Native Patterns, and Containerization, Third Edition
Moisés Macero García Tarun Telang
New York, NY, USA Hyderabad, Telangana, India

ISBN-13 (pbk): 978-1-4842-9756-8 ISBN-13 (electronic): 978-1-4842-9757-5


https://doi.org/10.1007/978-1-4842-9757-5

Copyright © 2023 by Moisés Macero García and Tarun Telang


This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information
storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now
known or hereafter developed.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with
every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an
editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the
trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not
identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to
proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of publication,
neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or
omissions that may be made. The publisher makes no warranty, express or implied, with respect to the
material contained herein.
Managing Director, Apress Media LLC: Welmoed Spahr
Acquisitions Editor: Melissa Duffy
Development Editor: Laura Berendson
Coordinating Editor: Gryffin Winkler
Copy Editor: Kezia Endsley
Cover designed by eStudioCalamar
Cover image by Image by James DeMers on Pixabay (www.pixabay.com)
Distributed to the book trade worldwide by Apress Media, LLC, 1 New York Plaza, New York, NY 10004,
U.S.A. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail [email protected], or visit
www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer
Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation.
For information on translations, please e-mail [email protected]; for reprint,
paperback, or audio rights, please e-mail [email protected].
Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and
licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales
web page at http://www.apress.com/bulk-sales.
Any source code or other supplementary material referenced by the author in this book is available to
readers on GitHub (https://github.com/Apress). For more detailed information, please visit https://www.
apress.com/gp/services/source-code.
Paper in this product is recyclable
This book is dedicated to my grandparents, parents, wife Nikita, and
son Vihan. They have always been a source of inspiration and
encouragement to me. It’s also for all of the software and technology
creators who work hard to make our planet a better place to live.
—Tarun Telang
Table of Contents
About the Authors�������������������������������������������������������������������������������������������������� xiii

About the Technical Reviewer���������������������������������������������������������������������������������xv

Acknowledgments�������������������������������������������������������������������������������������������������xvii

About this Book������������������������������������������������������������������������������������������������������xix

Chapter 1: Setting the Scene������������������������������������������������������������������������������������ 1


Who Are You?�������������������������������������������������������������������������������������������������������������������������������� 3
How Is This Book Different from Other Books and Guides?���������������������������������������������������������� 5
Learning: An Incremental Process������������������������������������������������������������������������������������������� 5
Is This a Guide or a Book?������������������������������������������������������������������������������������������������������� 5
From Basics to Advanced Topics��������������������������������������������������������������������������������������������������� 6
Skeleton with Spring Boot, the Professional Way�������������������������������������������������������������������� 7
Test-Driven Development�������������������������������������������������������������������������������������������������������� 7
Microservices�������������������������������������������������������������������������������������������������������������������������� 7
Event-Driven Systems������������������������������������������������������������������������������������������������������������� 8
Nonfunctional Requirements��������������������������������������������������������������������������������������������������� 8
Online Content������������������������������������������������������������������������������������������������������������������������������ 9
Summary�������������������������������������������������������������������������������������������������������������������������������������� 9

Chapter 2: Basic Concepts�������������������������������������������������������������������������������������� 11


Spring����������������������������������������������������������������������������������������������������������������������������������������� 11
Spring Boot��������������������������������������������������������������������������������������������������������������������������������� 16
Lombok and Java������������������������������������������������������������������������������������������������������������������������ 18
Testing Basics����������������������������������������������������������������������������������������������������������������������������� 21
Test-Driven Development������������������������������������������������������������������������������������������������������ 21
Behavior-Driven Development����������������������������������������������������������������������������������������������� 22

v
Table of Contents

JUnit 5����������������������������������������������������������������������������������������������������������������������������������� 23
Mockito���������������������������������������������������������������������������������������������������������������������������������� 23
AssertJ���������������������������������������������������������������������������������������������������������������������������������� 27
Testing in Spring Boot����������������������������������������������������������������������������������������������������������������� 28
Logging��������������������������������������������������������������������������������������������������������������������������������������� 29
Summary and Achievements������������������������������������������������������������������������������������������������������ 30

Chapter 3: A Basic Spring Boot Application����������������������������������������������������������� 33


Setting Up the Development Environment���������������������������������������������������������������������������������� 34
Java Development Kit 17������������������������������������������������������������������������������������������������������� 34
Integrated Development Environment (IDE)��������������������������������������������������������������������������� 34
HTTPie����������������������������������������������������������������������������������������������������������������������������������� 35
POST Request������������������������������������������������������������������������������������������������������������������������ 36
cURL�������������������������������������������������������������������������������������������������������������������������������������� 36
The Skeleton Web App���������������������������������������������������������������������������������������������������������������� 36
Spring Boot Autoconfiguration���������������������������������������������������������������������������������������������������� 41
Three-Tier, Three-Layer Architecture������������������������������������������������������������������������������������������ 47
Modeling the Domain������������������������������������������������������������������������������������������������������������������ 50
Domain Definition and Domain-Driven Design���������������������������������������������������������������������� 50
Domain Classes��������������������������������������������������������������������������������������������������������������������� 52
Business Logic���������������������������������������������������������������������������������������������������������������������������� 55
What You Need���������������������������������������������������������������������������������������������������������������������� 55
Random Challenges��������������������������������������������������������������������������������������������������������������� 55
Attempt Verification��������������������������������������������������������������������������������������������������������������� 59
Presentation Layer���������������������������������������������������������������������������������������������������������������������� 64
REST�������������������������������������������������������������������������������������������������������������������������������������� 64
REST APIs with Spring Boot��������������������������������������������������������������������������������������������������� 65
Designing the APIs����������������������������������������������������������������������������������������������������������������� 66
Your First Controller��������������������������������������������������������������������������������������������������������������� 67
How Automatic Serialization Works��������������������������������������������������������������������������������������� 69
Testing Controllers with Spring Boot������������������������������������������������������������������������������������� 73
Summary and Achievements������������������������������������������������������������������������������������������������������ 86

vi
Table of Contents

Chapter 4: A Minimal Frontend with React������������������������������������������������������������� 89


A Quick Intro to React and Node������������������������������������������������������������������������������������������������� 90
Setting Up the Development Environment���������������������������������������������������������������������������������� 91
The React Skeleton��������������������������������������������������������������������������������������������������������������������� 92
A JavaScript Client���������������������������������������������������������������������������������������������������������������������� 94
The Challenge Component���������������������������������������������������������������������������������������������������������� 96
The Main Structure of a Component�������������������������������������������������������������������������������������� 99
Rendering���������������������������������������������������������������������������������������������������������������������������� 101
Integration with the App������������������������������������������������������������������������������������������������������ 104
Running the Frontend the First Time����������������������������������������������������������������������������������������� 105
Debugging��������������������������������������������������������������������������������������������������������������������������������� 105
Adding CORS Configuration to the Spring Boot App������������������������������������������������������������������ 107
Playing with the Application������������������������������������������������������������������������������������������������������ 108
Deploying the React App����������������������������������������������������������������������������������������������������������� 109
Summary and Achievements���������������������������������������������������������������������������������������������������� 112

Chapter 5: The Data Layer������������������������������������������������������������������������������������ 115


The Data Model������������������������������������������������������������������������������������������������������������������������� 117
Choosing a Database���������������������������������������������������������������������������������������������������������������� 119
SQL vs. NoSQL��������������������������������������������������������������������������������������������������������������������� 121
H2, Hibernate, and JPA�������������������������������������������������������������������������������������������������������� 122
Spring Boot Data JPA���������������������������������������������������������������������������������������������������������������� 123
Dependencies and Autoconfiguration���������������������������������������������������������������������������������� 123
Spring Boot Data JPA Technology Stack������������������������������������������������������������������������������ 128
Data Source (Auto)configuration����������������������������������������������������������������������������������������� 130
Entities�������������������������������������������������������������������������������������������������������������������������������������� 132
Repositories������������������������������������������������������������������������������������������������������������������������������ 137
Storing Users and Attempts������������������������������������������������������������������������������������������������������ 141
Displaying Last Attempts���������������������������������������������������������������������������������������������������������� 147
Service Layer����������������������������������������������������������������������������������������������������������������������� 147

vii
Table of Contents

Controller Layer������������������������������������������������������������������������������������������������������������������� 149


User Interface���������������������������������������������������������������������������������������������������������������������� 155
Playing with the New Feature��������������������������������������������������������������������������������������������������� 163
Summary and Achievements���������������������������������������������������������������������������������������������������� 165

Chapter 6: Starting with Microservices���������������������������������������������������������������� 169


The Small Monolith Approach��������������������������������������������������������������������������������������������������� 170
Why a Small Monolith?������������������������������������������������������������������������������������������������������������� 170
The Problems with Microservices from Day Zero���������������������������������������������������������������� 170
Small Monoliths Are for Small Teams���������������������������������������������������������������������������������� 171
Embracing Refactoring�������������������������������������������������������������������������������������������������������� 172
Planning the Small Monolith for a Future Split������������������������������������������������������������������������� 173
New Requirements and Gamification��������������������������������������������������������������������������������������� 174
Gamification: Points, Badges, and Leaderboards���������������������������������������������������������������� 175
Moving to Microservices����������������������������������������������������������������������������������������������������������� 176
Independent Workflows������������������������������������������������������������������������������������������������������� 177
Horizontal vs. Vertical Scalability���������������������������������������������������������������������������������������� 178
Fine-Grained Nonfunctional Requirements������������������������������������������������������������������������� 180
Other Advantages���������������������������������������������������������������������������������������������������������������� 180
Disadvantages��������������������������������������������������������������������������������������������������������������������� 181
Architecture Overview�������������������������������������������������������������������������������������������������������������� 183
Designing and Implementing the New Service������������������������������������������������������������������������� 185
Interfaces���������������������������������������������������������������������������������������������������������������������������� 186
The Spring Boot Skeleton for Gamification������������������������������������������������������������������������� 186
Domain�������������������������������������������������������������������������������������������������������������������������������� 187
Service�������������������������������������������������������������������������������������������������������������������������������� 192
Data������������������������������������������������������������������������������������������������������������������������������������� 204
Controller����������������������������������������������������������������������������������������������������������������������������� 207
Configuration����������������������������������������������������������������������������������������������������������������������� 209
Changes in Multiplication Microservice������������������������������������������������������������������������������ 211
UI����������������������������������������������������������������������������������������������������������������������������������������� 216
Playing with the System����������������������������������������������������������������������������������������������������������� 222

viii
Table of Contents

Fault Tolerance�������������������������������������������������������������������������������������������������������������������������� 224


The Challenges Ahead��������������������������������������������������������������������������������������������������������������� 226
Tight Coupling���������������������������������������������������������������������������������������������������������������������� 227
Synchronous Interfaces vs. Eventual Consistency�������������������������������������������������������������� 227
Transactions������������������������������������������������������������������������������������������������������������������������ 232
API Exposure������������������������������������������������������������������������������������������������������������������������ 234
Summary and Achievements���������������������������������������������������������������������������������������������������� 234

Chapter 7: Event-Driven Architectures����������������������������������������������������������������� 237


Core Concepts��������������������������������������������������������������������������������������������������������������������������� 238
The Message Broker������������������������������������������������������������������������������������������������������������ 238
Events and Messages���������������������������������������������������������������������������������������������������������� 242
Thinking in Events��������������������������������������������������������������������������������������������������������������� 242
Asynchronous Messaging���������������������������������������������������������������������������������������������������� 248
Reactive Systems���������������������������������������������������������������������������������������������������������������� 251
Pros and Cons of Going Event-Driven��������������������������������������������������������������������������������������� 252
Messaging Patterns������������������������������������������������������������������������������������������������������������������ 255
Publish-Subscribe��������������������������������������������������������������������������������������������������������������� 256
Work Queues����������������������������������������������������������������������������������������������������������������������� 256
Filtering������������������������������������������������������������������������������������������������������������������������������� 256
Data Durability��������������������������������������������������������������������������������������������������������������������� 256
Message Broker Protocols, Standards, and Tools��������������������������������������������������������������������� 257
AMQP and RabbitMQ����������������������������������������������������������������������������������������������������������������� 259
Overall Description�������������������������������������������������������������������������������������������������������������� 259
Exchange Types and Routing����������������������������������������������������������������������������������������������� 260
Message Acknowledgments and Rejection������������������������������������������������������������������������� 263
Setting Up RabbitMQ����������������������������������������������������������������������������������������������������������������� 264
Spring AMQP and Spring Boot�������������������������������������������������������������������������������������������������� 266
Solution Design������������������������������������������������������������������������������������������������������������������������� 266
Adding the AMQP Starter����������������������������������������������������������������������������������������������������� 269
Event Publishing from Multiplication����������������������������������������������������������������������������������� 270
Gamification as a Subscriber���������������������������������������������������������������������������������������������� 277

ix
Table of Contents

Analysis of Scenarios���������������������������������������������������������������������������������������������������������������� 286


Happy Flow�������������������������������������������������������������������������������������������������������������������������� 288
Gamification Becomes Unavailable������������������������������������������������������������������������������������� 296
The Message Broker Becomes Unavailable������������������������������������������������������������������������ 298
Transactionality������������������������������������������������������������������������������������������������������������������� 300
Scaling Up Microservices���������������������������������������������������������������������������������������������������� 303
Summary and Achievements���������������������������������������������������������������������������������������������������� 309

Chapter 8: Common Patterns in Microservice Architectures������������������������������� 313


Gateway������������������������������������������������������������������������������������������������������������������������������������ 314
Spring Cloud Gateway��������������������������������������������������������������������������������������������������������� 316
The Gateway Microservice�������������������������������������������������������������������������������������������������� 321
Changes in Other Projects��������������������������������������������������������������������������������������������������� 326
Running the Gateway Microservice������������������������������������������������������������������������������������� 327
Next Steps��������������������������������������������������������������������������������������������������������������������������� 329
Health���������������������������������������������������������������������������������������������������������������������������������������� 330
Spring Boot Actuator����������������������������������������������������������������������������������������������������������� 331
Including Actuator in Your Microservices���������������������������������������������������������������������������� 334
Service Discovery and Load Balancing������������������������������������������������������������������������������������� 337
Consul���������������������������������������������������������������������������������������������������������������������������������� 343
Spring Cloud Consul������������������������������������������������������������������������������������������������������������ 345
Spring Cloud Load Balancer������������������������������������������������������������������������������������������������ 354
Service Discovery and Load Balancing in the Gateway������������������������������������������������������� 358
Playing with Service Discovery and Load Balancing����������������������������������������������������������� 362
Configuration per Environment������������������������������������������������������������������������������������������������� 372
Configuration in Consul������������������������������������������������������������������������������������������������������� 375
Spring Cloud Consul Config������������������������������������������������������������������������������������������������� 376
Implementing Centralized Configuration����������������������������������������������������������������������������� 378
Centralized Configuration in Practice���������������������������������������������������������������������������������� 382

x
Table of Contents

Centralized Logs����������������������������������������������������������������������������������������������������������������������� 389


Log Aggregation Pattern������������������������������������������������������������������������������������������������������ 389
A Simple Solution for Log Centralization����������������������������������������������������������������������������� 391
Consuming Logs and Printing Them������������������������������������������������������������������������������������ 395
Distributed Tracing�������������������������������������������������������������������������������������������������������������������� 402
Spring Cloud Sleuth������������������������������������������������������������������������������������������������������������� 403
Implementing Distributed Tracing��������������������������������������������������������������������������������������� 405
Containerization������������������������������������������������������������������������������������������������������������������������ 407
Docker��������������������������������������������������������������������������������������������������������������������������������� 410
Spring Boot and Buildpacks������������������������������������������������������������������������������������������������ 413
Running Your System in Docker������������������������������������������������������������������������������������������ 415
Dockerizing Microservices�������������������������������������������������������������������������������������������������� 417
Dockerizing the UI��������������������������������������������������������������������������������������������������������������� 417
Dockerizing the Configuration Importer������������������������������������������������������������������������������ 418
Docker Compose����������������������������������������������������������������������������������������������������������������� 421
Scaling Up the System with Docker������������������������������������������������������������������������������������ 435
Sharing Docker Images������������������������������������������������������������������������������������������������������� 438
Platforms and Cloud-Native Microservices������������������������������������������������������������������������������� 442
Container Platforms������������������������������������������������������������������������������������������������������������� 442
Application Platforms���������������������������������������������������������������������������������������������������������� 444
Cloud Providers������������������������������������������������������������������������������������������������������������������� 444
Making a Decision��������������������������������������������������������������������������������������������������������������� 446
Cloud-Native Microservices������������������������������������������������������������������������������������������������ 447
Conclusions������������������������������������������������������������������������������������������������������������������������������� 447

Index��������������������������������������������������������������������������������������������������������������������� 451

xi
About the Authors
Moisés Macero García has been a software developer since he was a kid, when he
started playing around with BASIC on his ZX Spectrum. During his career, Moisés has
most often worked in development and architecture for small and large projects, and
for his own startups as well. He enjoys making software problems simple, and he likes
working in teams, where he can coach others as well as learn from them. Moisés is the
author of the blog thepracticaldeveloper.com, where he shares solutions to technical
challenges, guides, and his view on different ways of working in IT companies. He
also organizes workshops for companies that need a practical approach to software
engineering. In his free time, he enjoys traveling and hiking.

Tarun Telang is a seasoned and hands-on technologist


with a wealth of experience in designing and implementing
highly scalable software applications. With an impressive
career spanning over 18 years, Tarun has been a valuable
contributor to renowned companies such as Microsoft,
Oracle, Polycom, and SAP. He began his career as an
enterprise Java developer at SAP, where he honed his skills
in crafting distributed business applications tailored for
large enterprises. Through his dedication to continuous
learning and professional development, he became an
Oracle Certified Java Programmer and SAP Certified Development Consultant for
Enterprise Java.
As a prolific author, Tarun frequently writes on Java and related technologies, and he
has authored many books and online courses. His earlier books Java EE to Jakarta EE 10
Recipes, and Beginning cloud-native development using MicroProfile, Jakarta EE and
Kubernetes have been well-received by the tech community. He has also been a sought-
after speaker at developer conferences like SAP TechEd and the Great Indian Developer
Summit, sharing his technical expertise with enthusiastic audiences. Tarun regularly
shares technological insights at www.practicaldeveloper.com.

xiii
About the Authors

Tarun’s expertise lies in architecting and developing large scale applications, with a
particular focus on cloud-­native solutions using cutting-edge architectural patterns like
microservices and event-driven architecture. He has led the development of numerous
end-to-end cloud-based solutions, demonstrating his deep technical understanding to
deliver high-performing, reliable, large-scale applications.
An advocate of agile methodologies, Tarun excels at applying domain-driven design
and behavioral-driven development principles, ensuring seamless project management
and collaboration across cross-functional teams in different geographical locations. His
international experience, having worked in India, Canada and Germany, has enriched
his global perspective and ability to adapt to diverse environments. Tarun lives in
Hyderabad, India, and he enjoys spending time with his wife and child when he’s not
indulging in his love of technology. You can follow Tarun or contact him on his Twitter
account: @taruntelang.

xiv
About the Technical Reviewer
Manuel Jordan Elera is an autodidactic developer and
researcher who enjoys learning new technologies for his
own experiments and creating new integrations. Manuel
won the Springy Award 2013 Community Champion and
Spring Champion. In his little free time, he reads the Bible
and composes music on his guitar. Manuel is known as
dr_pompeii. He has tech-reviewed numerous books,
including Pro Spring MVC with WebFlux (Apress, 2020),
Pro Spring Boot 2 (Apress, 2019), Rapid Java Persistence
and Microservices (Apress, 2019), Java Language Features
(Apress, 2018), Spring Boot 2 Recipes (Apress, 2018), and Java APIs, Extensions and
Libraries (Apress, 2018). You can read his detailed tutorials on Spring technologies and
contact him through his blog at www.manueljordanelera.blogspot.com. You can follow
Manuel on his Twitter account, @­ dr_pompeii.

xv
Acknowledgments
I would like to thank my wife, Nikita, and son, Vihan, for their patience
and love throughout the process of writing this book. I am indebted to all
my mentors and friends who always encouraged me to keep growing in
every phase of my professional career.
I’d like to thank my parents for pushing me in the right direction with tech-
nology and always supporting me every step of the way, even when I decided
to do something completely different than they expected. It’s also important
to note that without them, I probably wouldn’t have become a developer
and had such a great career. Lastly, thanks again go out to my wife (and
soulmate), Nikita. It’s an incredible feeling to be with someone who keeps
you motivated and challenges you, not only professionally but personally
as well.

Thank you for always being there for me!


I’d like to send a special thanks to Manuel Jordan (the technical reviewer),
for their impeccable work on this book. I also greatly appreciate Mark
Powers, and everyone at Apress Media (apress.com) for their support in
getting this book published.
Last, but not least, I would like to thank you, the reader, for taking the time
to read this book. We have tried our best through this book to offer you a
comprehensive, up-to-date, and practical guide that empowers you to build
sophisticated and resilient microservices architectures using Spring Boot.
—Tarun Telang

xvii
Other documents randomly have
different content
hauskoja muistoja noilta vuosilta, jolloin opetin sinua, ja olet sanonut
minulle useammasti kuin kerran, että elämäsi iloisin päivä tulee
olemaan se, jolloin Heven maakunnan jokainen asukas osaa lukea
ja kirjoittaa».

»Nyt olen kumminkin toista mieltä», sanoi András hieman


töykeästi, »ja silloin kun olette ruvennut puhumaan minulle tuosta
asiasta, olen kieltäytynyt keskustelemasta siitä kanssanne. Niin, olen
muuttunut suuresti sitten noiden päivien, jolloin te Bideskuty’n
kauhean tulipalon jälkeen esititte suunnitelmianne ensimmäisen
kerran minulle ja kunnioititte minua äärettömästi pyytämällä minua
auttamaan teitä sen toteuttamisessa. Sen jälkeen, isä, olen niin
katkerasti ja kiihkeästi ikävöinyt raakaa tietämättömyyttä, joka ei
kaipaa muuta kuin ruoskaa ja jolla ei ole muita ihanteita kuin viini,
hyvä mustalaissoitto ja lihavat talonpoikaistytöt. Olen ikävöinyt
äärettömästi noiden kaipausten ja ihanteiden suomaa onnea, jota
voidaan verrata kedoilla laitumella käypien eläinten tyytyväisyyteen.
En halua enää ollenkaan riistää tuota onnea tasankojen kylissä
asuvilta tovereiltani ja vertaisiltani, sillä heidän saamansa korvaus
siitä olisi niin sanomattoman mitätön».

»András», sanoi pappi hyvin ystävällisesti, »olet kyllä kärsinyt


paljon ja kuten kaikki muutkin, joille on sattunut joku kauhea
onnettomuus, katsot sinäkin senvuoksi tulevaisuuteen niin synkästi,
että ammut aivan harhaan kuin sokea. Sivistys antoi sinulle suuria
pyrinnöitä ja niiden siivillä kohosit sinä ihanteitten kuningaskuntaan,
mutta nopeasti tapahtui jotakin juuri silloin kun ojensit kätesi
poimiaksesi nuo jo melkein saatavissa olevat hedelmät, ja sinä
putosit jälleen maahan haavoitettuna ja loukkautuneena. Moitit
pyrkimyksiä, jotka kantoivat sinua ylöspäin, ja soimaat ihanteita, joita
koetit saavuttaa, huomaamatta, että niitä ehkä painoivat inhimilliset
intohimot, jotka vetivät ne takaisin maahan».

»Ei, isä, en ole soimannut ihanteitani, jotka ehkä olivat


saavuttamattomissa, kuten sanoitte. Ollessani nuori poika halusin
nähdä isäni pelloilla kasvavan viljan antavan suuremman sadon kuin
kenenkään muun, mutta sitten myöhemmin haaveilin omasta
kodista, jossa äitini istuisi suuressa nojatuolissaan ja minä hankkisin
hänelle kaikki mukavuudet, joita hän vain kaipaisi. Ehkä uneksin
myöskin kauniista vaimosta, jonka ottaisin sitten hänen kuoltuaan, ja
jonka ruoanlaittotaitoa ja kutomia kankaita kehuttaisiin kaikkialla
maakunnassa. Tällaiset ovat, isä, useimpien kylän poikien ihanteet,
jotka hyvin sopivatkin orjien jälkeläisille. Tuollaiset ihanteet voidaan
helposti saavuttaa, ja vaikka talonpojan mieli eksyisikin liian kauaksi
noihin seutuihin tullakseen siellä nöyryytetyksi, ei se kumminkaan
lennä liian korkealle. Hän putoo matalalta ja putoamisen aiheuttamat
haavat paranevat helposti. Tyytyväisyys ja jonkinlainen tyyni
mietiskely muuttavat vanhuuden hauskaksi. Mutta minä rikkauden
aiheuttamine ylpeyksineni rupesin haaveilemaan muista asioista.
Ojensin karkeat ruskeat käteni tunnustelevasti muita esineitä kuin
lapiota ja viikatetta kohti. Te ohjasitte horjuvat askeleeni oppimisen ja
sivistyksen uusiin seutuihin. Hyvinvoinnin suoma onnellinen tunne
täytti mieleni. Aloin ajatella, että tuo lumoava valtakunta olikin
todellinen kotini, ja otaksuin, että olin vapautunut ikuisiksi ajoiksi
talonpojan suuresta tietämättömyydestä, hänen rivoista
huvituksistaan ja hänen raa'asta tavallisesta luonteestaan. Luulin
voivani sen jälkeen kuljeskella mielin määrin ja häiritsemättömästi
yhä korkeammalle monien kauniiden seutujen kautta lumoavien
ihanteitteni maahan, jonka ihastunut katseeni oli nopeasti
näkevinään sen pilvimaan takana, jossa parhaillaan oleskelin. Sitten
rupesin unelmieni kehoituksesta hakemaan tuota ihannetta tähtien
joukosta, ja minä saavutinkin sen. Pilvet hajautuivat ja näin sellaisen
paratiisimaisen näyn, ettei kukaan kuoleva ihminen ole saanut
sellaista ennen katsella. Mutta ojentaessani käteni tarttuakseni
siihen, ilmestyikin eteeni nopeasti tuo julma ja heltymätön raivotar
'Ennakkoluulo' ja sulki minulta tien paratiisiin. Ivallisin sormin viittasi
tuo hirviö karkeihin käsiini, raskaaseen käyntiini,
lammasnahkaviittaani ja pellavapaitaani, alkaen sitten äänekkäästi ja
ivallisesti nauraen katkoa sydänjänteitäni ja kiskoa niitä rinnastani.
Lopulta heitti hän minut noista pyörryttävistä korkeuksista takasin
maahan ja helvettiin. Ah, isä, tuo putoaminen tuntui hirveältä, sillä
olinhan uskaltanut katsoa tähtiin. En kumminkaan moiti niitä. Ne
eivät voi mitään omalle saavuttamattomalle suloisuudelleen, ja
raivotar, joka suojelee heitä, on sitonut lujan siteen heidän silmilleen.
Soimaan ainoastaan omaa tyhmyyttäni, ylpeyttäni ja intohimojanikin,
jos niin haluatte, mutta en voi olla moittimatta tuota näkymätöntä
kättäkään, joka alussa tempaisi silmieni edestä tietämättömyyden
onnellisuuden verhon ja näytti minulle välähdyksiä tuosta paratiisista,
jota eivät meikäläiset voi milloinkaan saavuttaa. Katsokaa, isä,
putosin niin äärettömän korkealta. Olen kuolettavasti loukkautunut ja
haavoittunut, mutta huolimatta heikkoudestani on minulla kumminkin
voimia kuiskata: 'Älkää ponnistelko, houkat! Tietämätön tyytyväisyys
on vain onnellisuutta!'»

Hänen äänensä murtui nyyhkytyksiksi. Pappi ei vastannut. Hänen


kokemuksensa ihmisluonteesta, sellaisena kuin se tavallisesti
esiintyi hänelle tässä vaatimattomassa kansassa, joka tuli kertomaan
hänelle surujaan ja huoliaan, ei riittänyt ilmaisemaan, miten hänen oli
meneteltävä tämän omituisen ja intohimoisen miehen voimakkaan
surun lieventämiseksi, miehen, jonka luonteeseen sisältyivät
sivistyneen ihmisen hienotunteisuus ja raa'an unkarilaisen
talonpojan ajattelematon itsepäisyys. Hänen ystävällinen luonteensa
suhtautui osaaottavasti tuohon suruun, jonka laadun hän
epämääräisesti arvasi, mutta jota hän ei voinut ymmärtää. Kuin
lohduttaakseen Andrásta nosti hän kumminkin kätensä pelokkaasti
tämän olalle.

He olivat saapuneet teiden risteykseen, ja nuori talonpoika oli


pysähtynyt sanoakseen jäähyväiset. Hän oli puhunut hyvin
kiihkeästi, ja hänen kasvonsa näyttivät kalpeammilta ja
surullisimmilta kuin äsken. Tuntiessaan papin ystävällisen käden
olallaan säpsähti hän kovasti. Ystävällisesti otti hän sen omiinsa ja
puristi sitä lämpimästi.

Isä Ambrosius katsoi kauan ja myötämielisesti noihin tummiin


silmiin, joissa oli niin surullinen ja toivoton ilme.

»Eikö sinustakin tunnu, András», sanoi hän hyvin ystävällisesti,


»että mielesi huojentuisi suuresti, jos kertoisit minulle huolesi»?

Andráksen ote heltisi äkkiä, hän laski vanhan ystävänsä käden irti
ja hänen katseensa synkistyi huomattavasti.

»Ei minulla ole mitään kertomista», sanoi hän kartellen.

Isä Ambrosius huokaisi. Hän näytti pettyneeltä ja


loukkaantuneelta, ja hääräili hevosensa luona aikoen kiivetä sen
selkään.

»Ettekö halua sanoa minulle jäähyväisiäkään, isä»?

Pappi tarttui nuoren talonpojan hänelle ojentamaan käteen


katsoen häneen moittivasti.

»András, et näytä enää välittävän vanhasta ystävästäsi».


»Olette aivan väärässä, isä», sanoi András vakavasti. »Teidän on
pyydettävä piispalta erityinen synninpäästö, sillä niin luonnoton
valhe. Kas niin, nyt taasen — teidän on suotava minulle anteeksi.
Olen sellainen kiittämätön raukka. Isä, saatte minulta tuota
kouluanne varten niin paljon rahaa kuin haluatte. Aloittakaa
rakentaminen heti roudan haihduttua maasta. Teidän on
huolehdittava siitä kaikesta, sillä teidänhän se on suunnitelmannekin.
Toimikaa, kuten parhaaksi näette. Hyvästi nyt, ja sanokaa äidilleni,
että tulen kotiin huomenna».

»Jumala siunatkoon sinua, András! Minä…»

»Hsh, luultavasti täyttää hän pyyntönne myöhemmin. Nykyään ei


hän muista minua. Hyvästi»!

Vanha pappi oli noussut hevosensa selkään, mutta nähtävästi


tuntui lähtö hänestä hyvin vaikealta. Pari kertaa katsahti hän
taakseen Dandárin juostessa majesteettista ravia. Pitkä talonpoika
seisoi kauan teiden risteyksessä katsellen hänen jälkeensä. Isä
Ambrosius voi nähdä hänet hyvin kirkasta taivasta vasten. Hän
kaivoi taskustaan suuren nenäliinansa ja niisti nenäänsä
voimakkaasti, sillä ahdistava pala oli kohonnut hänen kurkkuunsa.
XXIX

»KUNNIOITA ISÄÄSI JA ÄITIÄSI»!

Bideskuty’n seinät kaikuivat jälleen ilosta ja naurusta. Suuret


keittiöt olivat jälleen täynnä ahkeria tyttöjä ja keittiöpoikia, kokonaiset
härät paistuivat suurissa vartaissa, lampaita ja karitsoita oli
teurastettu, ja suurilla portailla ja kivitetyillä käytävillä riennettiin
edestakaisin. Huomenna oli kreivittären syntymäpäivä, ja vihdoinkin
parin vuoden kuluttua iloittaisiin Bideskuty’ssa jälleen ja
kuunneltaisiin mustalaisten soittoa.

Kreivitär Irma oli kiihtyneempi ja hermostuneempi kuin hän


tavallisissa oloissa olisi pitänyt sopivanakaan. Paljon kauheita
tapahtumia oli sattunut sen jälkeen kuin vierasjoukko oli täyttänyt
Bideskuty’n suojat viimeksi ylimyksellisellä iloisuudellaan, josta
kreivitär niin paljon piti. Hän tiesi tuon ajan vihdoinkin koittaneen,
jolloin hänen oli kuunneltava vieraiden kaksimielisiä puheita ja
ivallisen myötätunnon osoituksia, ja vastattava ystäviensä
hämmästyneihin kysymyksiin maakunnan suloisimman perijättären
mahdottomasta avioliitosta. Kun hän määräili keittiössä ja navetassa,
ja valvoi ruokapöydän koristamista, viinin laskemista tynnyreihin ja
vierashuoneiden tuulettamista, voi hän tuskin todeta, että hänen
elämässään oli tapahtunut suuri muutos sen jälkeen kuin pari vuotta
sitten tuon peloittavan ja salaperäisen tulipalon jälkeen kaikki vieraat
olivat poistuneet nopeasti tästä silloin niin surullisesta ja autiosta
paikasta. Ainoastaan, kun hän kohtasi Ilonkan portailla ja kun
aterioiden aikana tuon pari vuotta sitten niin iloisen tytön omituinen
hiljaisuus kiusasi häntä tuoden hänen mieleensä sellaisen
kummallisen vaikutelman, ettei hän enää voinut hallita omaa
tytärtään eikä keksiä hänen häpeämättömän käyttäytymisensä syitä,
silloin vain muisti hän vastenmielisesti nuo monet tapahtumat, jotka
olivat seuranneet nopeasti toisiaan viimeisten vuosien kuluessa.

Osana hänen suunnitelmastaan oli aina ollut, että Ilonka poistuisi


niin pian kuin suinkin sivistymättömän miehensä kodista, eikä hän
tuotta ajatuksetta luultavasti olisi milloinkaan suostunutkaan tuohon
kauheaan avioliittoon. Hän oli kumminkin samalla aina luullut, että
hänen lapsensa palaisi hänen luokseen melkein samanlaisena kuin
hän oli ollut, ennenkuin tuo hirveä talonpoikainen kosija oli
varjostanut hänen elämänsä. Hän oli otaksunut, että Ilonka
suottaleskenä olisi vielä viehättävämpi miesten mielestä, ja
vapaampi ja hilpeämpi käytökseltään, mutta kumminkin melkein
sama kuin ennenkin ja hyvin iloinen saadessaan yhtyä äitinsä
kanssa yhteiseen ponnistukseen — kartoittaa kaikki tuon
talonpoikaisen aviomiehen muistotkin Bideskuty’n rajojen
ulkopuolelle.

Kun Ilonka hääpäivän jälkeisenä päivänä palasi entiseen kotiinsa


aivan entisen minänsä varjona, tunsi äidin sydän ensimmäisen
kerran surua ja katumusta. Täynnä todellista myötätuntoa koetti hän
puristaa järkytetyn lapsensa hellään äidilliseen syliinsä, ja
valmistautui kuuntelemaan kauhistuneena ja itkien syvästi
loukkautuneen ylimyksellisen tyttärensä kertomusta raa'an
talonpoikaisen miehensä kohtelusta.

Mutta sen sijaan olikin Ilonka, joka nähtävästi oli vielä heikko ja
sairas kaikesta kokemastaan, kieltäytynytkin kertomasta sanaakaan
lyhytaikaisesta olostaan miehensä kodissa. Hän oli ottanut vaitiollen
vastaan vanhempiensa suutelot, vaitiollen oli hän istuutunut entiselle
paikalleen pöytään ja tyynesti ruvennut jälleen asumaan entisessä
huoneessaan yön poissaolon jälkeen ja jatkamaan tuskin
keskeytyneitä hommiaan.

Kreivittären mielestä oli Ilonka omituisesti muuttunut. Hän näytti


kokonaan unhottaneen hymyilemisen, hän puhui hyvin vähän ja hän
oli omistanut muutamia hyvin omituisia mielipiteitä lyhyen
oleskelunsa ajalta talonpojan kodissa. Kreivitär oli menettänyt
vaikutusvaltansa häneen, ja kreivitär Irma tunsi itsekin, kuinka
naurettavaa olisi ollut koettaakaan ohjata tytärtä, joka kuitenkin oli
naimisissa oleva nainen ja niin ollen oikeutettu menettelemään,
miten hän vain halusi. Häntä harmitti hirveästi llonkan itsepäisyys
käydä vierailemassa Kisfalussa tuon vanhan talonpoikaisnaisen
luona, jota hän itsepäisesti nimitti »äidiksi». Nuoren suottalesken ja
hänen anoppinsa välille näytti syntyneen omituinen ystävyys.
Kreivitär Irma ei voinut sitä ymmärtää, mutta hän oli kuullut aivan
varmalta taholta, että Keményn András oli asunut Zárdassa
hääpäivästä alkaen. Hän oli senvuoksi johonkin määrin tyydytetty,
ettei hänen tyttärensä kumminkaan alentunut niin paljon, että hän
vieläkin seurusteli tuon hävittömän talonpojan kanssa, joka oli
uskaltanut tuppautua hänen miehekseen.

Mitä tuohon inhoittavaan Keményn Andrákseen tuli, ei kreivitär


vaivannut juuri aivojaan ajattelemalla häntä. Hääpäivän jälkeisenä
päivänä oli hän lähettänyt Bideskuty’yn tärkeän paperin, jossa hän
kirjallisesti lahjoitti Ilonkalle koko Bideskuty’n tilan. Tuohan oli
niinkuin sen olla pitikin, tietysti, sillä ei suinkaan hän voinutkaan
vaatia, että hänen ylimyksellinen vaimonsa olisi ollut riippuvainen
hänestä tahi tytön omista vanhemmista. Kreivitär Irmasta oli se
kaikkein suotuisin ratkaisu, eikä Ilonka sitäpaitsi ollut milloinkaan
tiennytkään, ettei maatila enää kuulunutkaan hänen vanhemmilleen
eikä hänen tarvinnut saada sitä nyt ikinä tietääkään. Ilonka ei
milloinkaan kysellyt mitään eikä näyttänyt huolehtivan ollenkaan,
mistä hän saa ylläpitonsa ja kuka hänet elättää ja vaatettaa. Tyttö
luuli varmaankin, että isä oli vielä tuo sama rikas aatelismies,
jollaiseksi hän oli kuullut isäänsä aina sanottavan, ja otaksui
luultavasti, että hän mainiosti voi elättää ainoan tyttärensä, ellei tämä
halunnut asua miehensä luona. Vanhemmat kohtelivatkin häntä
hyvin ystävällisesti. Hän sai kaikkea, mitä hän vain halusi, ja tuona
kauheana koleeran raivoamisaikanakin antoi Bideskuty hänelle niin
paljon rahaa, vehnää ja viiniä kuin hän vain halusi jakaa kylän
köyhille. Kreivitär Irma kohotti kauhistuneena kätensä, kun Ilonka
ilmaisi tarkoituksensa olevan jäädä Kisfaluun niin kauaksi, kunnes
kulkutauti lakkaa raivoamasta. Ilonka oli sanonut tuon »Menen
sinne»! sellaisin äänensävyin, ettei sitä voitu vastustaa. Ja mitenpä
häntä olisi voitukaan estää, sillä olihan hän naimisissa. Hän ei ollut
enää äitinsä holhouksessa.

Ilonka viipyi poissa neljä kuukautta eikä kreivitär Irma voinut


käsittää, mitä lapsi tuon ajan kuluessa teki. Keményn András oli
Zárdassa, jossa koleera raivosi pahemmin, ja Bideskuty’n jalo
kreivitär toivoi, että tauti täyttäisi velvollisuutensa tuohon vihattavaan
mieheenkin nähden.
Kylässä raivoava koleera ja alituinen tartunnan pelko riittivät isä
Ambrosiuksenkin käyntien lakkaamisen syiksi. Pappi olikin
omaksunut hyvin vastenmielisen tavan puhua aina Andráksesta ja
kaikista tämän kuluttamista rahamääristä kulkutaudin tuottamien
häviöiden korvaamiseksi. Ilonka oli poissa, joten hän ei ollut
kuulemassa tätä alituista ylistystä, mutta hän näytti kumminkin
omaksuneen jotakin sivistymättömän miehensä hellyydestä noita
Arokszállaksen likaisissa taloissa asuvia talonpoika-raukkoja
kohtaan.

Vihdoinkin talvella palasi Ilonka jälleen kotiinsa. Hän näytti


onnellisemmalta ja iloisemmalta kuin lähtiessään, mutta hän ei
milloinkaan halunnut kertoa äidilleen, miten hän oli viettänyt viimeiset
kuukaudet. Kreivitär Irma alkoi kumminkin vähitellen odottaa kevättä
ja kesää. Viime vuonna ei hänen syntymäpäiväänsä oltu ollenkaan
vietetty, sillä silloin raivosi juuri koleera, mutta tänä vuonna tiesi hän
monien tulevan, ja vanhat melkein unhottuneet perinnäistavat
uudistettaisiin. Uteliaisuudestakin tulisi Bideskuty’yn paljon vieraita.
Kreivitär Kantássy olisi kai vielä väsyttävämpi kuin ennen. Mariska
oli juuri mennyt naimisiin Bartoczin Zsigan kanssa, jolla oli hyvä virka
Lontoossa olevassa lähetystössä, Bideskuty’n Ilonkan, tuon
maakunnan kuuluisimman kaunottaren, saadessa tyytyä erääseen
isänsä maalla asuvaan talonpoikaan. Tuo vahinko korvautuisi
kumminkin vähitellen. Bideskuty’n vieraanvaraisuus tänä vuonna,
viinit, paistit ja hedelmät, voittaa varmaankin kaikkien naapurien
suurimmatkin vaatimukset.

Kreivillä oli nykyään aina runsaasti rahaa, ja tämän vuoden sato oli
ollut niin runsas, että se oli täydellisesti korvannut viimevuotisen
tulvan aiheuttamat vahingot.
Keményn András näytti todellakin ymmärtävän, miten maatilaa oli
hoidettava. Ja sehän olikin luonnollista, sillä kaikki talonpojat
ymmärsivät aina, miten vehnää ja turnipseja oli kasvatettava. András
hoiti kaiken eikä kreivin tarvinnut muuta kuin iloita saavutuksista ja
vuosituloistaan, joita hän ei enää jaksanut kokonaan tuhlatakaan.

»Tuntuu aivan siltä, kuin entiset ajat olisivat palanneet jälleen»,


sanoi kreivitär Irma miehelleen, joka istui tupakoimassa
työhuoneessaan. »Muistatko, Gyuri, että me pari vuotta sitten
istuimme juuri näin keskustelemassa syntymäpäiväni vietosta? Kuka
olisi silloin voinut aavistaakaan kaikkia sen jälkeen osallemme
sattuneita onnettomuuksia»?

Bideskuty’n Gyuria vaivasi leini niin, ettei hän voinut laskea


jalkaansa maahan, ja hän oli senvuoksi äreällä ja kärtyisellä tuulella.
Tupakoidessaan murahti hän jotakin vihaisesti vastaukseksi.

»Sinun on nyt myönnettävä, uskallan sen sanoa», lisäsi kreivitär,


»minun olleen aivan oikeassa varoittaessani sinua noista pirullisista
laitoksista. Ja muutkin varoittivat sinua, Gyuri. Huomaat kai nyt,
miten väärässä olit».

Bideskuty ei vastannut mitään, sillä hänen kärsivällisyytensä oli


loppumaton. Sitäpaitsi oli häntä moitittu ja syytetty niin usein, ettei
hän välittänyt sellaisista puheista enää ollenkaan. Hän tupruutteli
piipustaan suuria savupilviä, murahtaen silloin tällöin tuskasta ja
kiroillen aina tämän tästä partaansa. Sitten kuin hänen vaimonsa
lopetti, sanoi hän tyynesti:

»Olen varma, etteivät kaikki ruokalistasi ole vielä valmiit. Ja puoli


tuntia sitten sanoit meneväsi leikkaamaan kukkia pöytäkoristeiksi».
»Haluat siis karkoittaa minut pois. Odotatko ketään»?

»Odotan».

»Ketä sitten»?

»Erästä liiketuttavaani».

»Liiketuttavaako, Gyuri?» kysyi kreivitär epäilevästi.

»Et suinkaan ketään juutalaista koronkiskuria»?

»En, en! Mitä taivaan nimessä se sinua liikuttaa, ketä minä


odotan»?

»En ymmärrä tuota sanaa 'liikeasiat'. Vävysihän hoitaa nuo asiat


tavallisesti. Sanoit, ettet odota ketään juutalaista. Kunhan vain
et…?»

»Odotan juuri häntä! Minulla on luullakseni oikeus käskeä talooni


kenen ikinä vain haluan!»

»Aiotko todellakin sanoa, että olet kutsunut tuon miehen tänne»?

»Ja miksi en olisi»?

»Mutta Ilonkahan on täällä»!

»Ei suinkaan hän syö tyttöä».

»Gyuri, sinun on ajateltava hieman tyttäresi tunteita. Ilonka ei saa


nähdä tuota miestä täällä».
»Joutavia! András on hänen miehensä, eikö olekin? Kuvitteletko
heidän aina elävän erillään, kuten tähän asti? Ja jos sellainen
osoittautuu mahdolliseksi, voin vain sanoa, että Ilonkan on täytynyt
kiusata häntä äärettömästi, kuten sinäkin minua. Koska hänellä ei
ollut leiniä, pääsi hän pakoon».

»Gyuri, en voi uskoa, että tuo sivistymätön talonpoika on lumonnut


sinutkin, kuten hän on lumonnut tuon tyhmän vanhan papin. Puhut
kiusaamisesta. Elämäni on yhtä vaikeaa kuin marttyyrien kuullessani
kaikkien ylistävän häntä. Sanon häntä kauheaksi raakalaiseksi
hänen käytöksensä vuoksi tytärtäsi kohtaan. Ilonka on liian hellä ja
itseensä sulkeutunut kertoakseen sinulle kaikkia, mitä hän miehensä
puolelta on saanut kestää, mutta varmasti ei hän olisi poistunut
miehensä luota niin pian, ellei mies olisi käyttäytynyt vielä
sivistymättömämmin kuin olin hänestä luullutkaan».

»Teillä naisilla ei ole ollenkaan kunniantuntoa», jyrisi Bideskuty.


»Puhut tuosta miehestä kuin jostakin raakalaisesta ja pedosta, ja
kumminkin olet valmis ottamaan häneltä vastaan kaikki hänen
jalomieliset lahjansa. Hän pelasti koko tämän talon, jossa elämme,
tuon verenimijän, Rosensteinin, kynsistä, ja lahjoitti Ilonkalle koko
maatilan, joka kokonaisuudessaan on kai maksanut hänelle
satojatuhansia. Tyynesti toimittaa hän kaikki puolestamme, että
Ilonka voisi elää niin ylellisesti, ettei hänen eikä meidän ylpeytemme
joutuisi kärsimään. Ja sinä puhut hänen häpeällisestä
käyttäytymisestään tytärtämme kohtaan. Mitä sinä sitten sanot
Ilonkan käytöksestä»?

»Gyuri, sinun on muistettava, ettei lapsi raukka ollenkaan


tiedäkään kotimme luovuttamisesta hänelle. Hän ei tiedä mitään
sinun ja tuon miehen välisistä raha-asioista».
»Minun syytäni ei ole ollenkaan noiden inhoittavien salaisuuksien
keksiminen. Ilonka oli kylliksi vanha saadakseen tietää kaiken.
Pelimme miestä kohtaan ei ollut rehellinen. Koetit parhaasi mukaan
häväistä häntä lapsesi kuullen luovuttaen Ilonkan kumminkin hänelle
ja sallien hänen yksinään taistella taistelunsa Ilonkan voittamiseksi.
Sellainen ei ollut rehellistä peliä».

»Gyuri, et tiedä enää, mitä puhut. Jos olisin kertonut Ilonkalle


sinun ja Keményn välisistä asioista, olisit joutunut hyvin omituiseen
valoon lapsesi silmissä. Olisitko voinut sitten vaatia Ilonkaa
kunnioittamaan isäänsä ja äitiään? Silloin olisi hän menettänyt
kaiken myötämielisyytensä meitä kohtaan».

»Mielestäni olisi se paljon suotavampaa, että hän kunnioittaisi


meitä hieman vähemmän ja miestään enemmän. Murrun melkein
tuon kiitollisuuden taakan alle, jonka Ilonka ja kaikki me muutkin
olemme velkaa tuolle miehelle».

»Gyuri, puheestasi päättäen olet omaksunut lukiessasi noita


ulkomaalaisia kirjoja yhä enemmän noita uusia aatteita, jotka jo
kerran veivät sinut vararikkoon».

»Älä koske niihin kieliin, Irma, tahi…»

»Hsh, malttisi menettäminen ei hyödytä mitään, Gyuri, sillä tehtyä


ei saada enää tekemättömäksi. Meidän on koetettava tehdä Ilonka
niin onnelliseksi kuin suinkin, että hän voi unhottaa menneisyyden.
Hän on vielä niin nuori ja András on luullakseni jo miehuutensa
parhaassa iässä. On hyvin mahdollista, että Ilonkasta tulee leski,
ennenkuin hän ennättää täyttää kolmeakymmentäkään. Silloin tulee
hänestä niin rikas, että hän voi mennä naimisiin kenen kanssa hän
vain haluaa, ja varmasti on hän ensimmäinen kiittämään meitä
tavasta, jolla olemme suunnitelleet hänen elämänsä. Sillä aikaa on
minun koetettava pitää häntä poissa talon tästä osasta. Tänään…»

Ovi aukeni hiljaa ja Ilonka tuli huoneeseen hymyillen niin iloisesti,


että hän oli melkein entisen näköinen. Kreivitär katsahti häneen
epäluuloisesti, mutta tyttö näytti aivan tietämättömältä ja
iloisemmalta kuin moniin kuukausiin.

»No niin, minun on mentävä katsomaan kukkakoristuksiani», sanoi


kreivitär välinpitämättömästi. »Mielestäni, voisit sinä, Ilonka, tulla
minua auttamaan. Saat koota minulle suuren korillisen noita kauniita
kukkia lavojen takaa. Palvelijattaret eivät osaa niitä katkoa, vaan
repivät kukat juurineen maasta. Tarvitsen niitä melko paljon. Saat
Pannalta korin, ja kun olet täyttänyt sen, tule luokseni
leipomatupaan, jossa sitten järjestän ne».

»Tulen aivan heti, äiti. Mutta», lisäsi hän viehättävästi hymyillen,


»enkö saa puhella hieman isäni kanssa ensin»?

»Ainoastaan muutamia silmänräpäyksiä vain. Tarvitsen noita


kukkia, ja isäsi odottaa erästä liiketuttavaansa luokseen».

»Tulen luoksesi, äiti, viiden minuutin kuluttua».

Poistuminen tuntui kreivitär Irmasta hyvin vastenmieliseltä. Hän ei


halunnut milloinkaan jättää tytärtään isän huostaan. Katsahdettuaan
varoittavasti mieheensä poistui hän kumminkin.

Ilonka odotti, kunnes äidin askelten ääni lakkasi kuulumasta


käytävästä. Sitten hän kääntyi isäänsä päin ja sanoi tyynesti:

»Isä, etkö halua kertoa minulle, mikä tuo 'kiitollisuuden taakka' on,
jonka minä ja me muut kaikki olemme velkaa miehelleni»?
»Ilonka, olet kuunnellut»!

»Tahtomattani, vannon sen. Olin juuri tulossa huoneeseen, kun


tuo lause kantautui korviini aikoessani avata oven. Tunnustan, että
koetin kuulla lisääkin, mutta äidin puheesta en saanut mitään selvää.
Kai kerrot minulle, etkö kerrokin»?

»Puhuin vain ylimalkaisesti», sanoi Bideskuty hermostuneesti. »Et


varmaankaan kuullut oikein»?

»Nyt isä», sanoi Ilonka taivuttavasti, »toivon sinun koettavan


muistaa, etten ole enää aivan sellainen lapsi kuin olen ollut. Kaksi
vuotta on jo pitkä aika», lisäsi hän miettivästi, »ja niiden kuluessa
olen kokenut kaikenlaista. Olen nyt naimisissa ja olen paljon
vanhempikin. Luullakseni on minulla oikeus tietää, miksi olemme
kiitollisuuden velassa tuolle miehelle, jonka nimi minulla nyt on».

»Sinun on taivutettava äitisi kertomaan sinulle kaikki nuo toivomasi


asiat», sanoi Bideskuty.

»Tiedät aivan hyvin, isä, ettei hän kerro minulle mitään. On aivan
hyödytöntä taistella sitä vastaan, rakkaani, sillä en aio poistua tästä
huoneesta, ennenkuin saan tietää, mitä tahdon».

»Siinä ei ole mitään kerrottavaa».

»Millaisessa kiitollisuudenvelassa olen minä miehelleni»?

»Ymmärsit sanani aivan väärin», väitti Bideskuty itsepäisesti.

»Isä, olen kysynyt sinulta niin kunnioittavasti kuin lapsenasi vain


voin. Älä pakota minua vaatimaan, mitä minulla on oikeus saada
tietää».
»Ilonka, olet luonnoton. Mitä sinua hyödyttää kuulla asioita, jotka
koskevat vain minua ja äitiäsi?»

»Kuinka paljon rahaa antoi Keményn András sinulle saadakseen


mennä naimisiin kanssani»?

»Ilonka, olet menettänyt järkesi», sanoi Bideskuty vihaisesti.

»Enkä ole! Et halua kertoa minulle totuutta ja senvuoksi on minun


pakko tehdä johtopäätöksiä. Jos kieltäydyt kertomasta minulle
kaikkea, on minun mahdotonta oleskella kattosi alla enää tuntiakaan,
ja…» lisäsi hän änkyttäen, »koska ei tietysti mieheni huoli minua
luokseen, on minun mentävä johonkin muualle».

»Kuuntele nyt, Ilonka. Teissä naisissa ei ole hituistakaan


johdonmukaisuutta. Et ole mielestäsi enää mikään lapsi, ja niin ollen
kai ymmärrät, että tulipalo toisena ja tulva toisena vuonna voivat
köyhdyttää rikkaankin maanviljelijän. Sen lisäksi uhkasi ja petti
minua muudan verenimijä, koronkiskuri, kunnes kaikki maani
joutuivat vieraisiin käsiin. Miehesi on lainannut minulle paljon rahaa
maitani vastaan ottamalla niistä vain kohtuullisen koron. Tuo
Rosenstein roisto, jonka kuulemma piru vihdoinkin on korjannut,
pakotti minut allekirjoittamaan muutamia papereita, joiden
perusteella hän sitten pakotti minut maksamaan suunnattomia
korkoja. Maksoin niitä vuosikausia tietämättä ollenkaan, että ne
menivät juutalaisen taskuihin Keményn saamatta niistä penniäkään.
Tuli ja vesi täydensivät tuon koronkiskurin työn. Minusta tuli köyhä
mies. Silloin ilmestyivät jälleen nuo allekirjoittamani paperit näkyviin,
joita en ollut lukenut läpikään, ja sain tietää niiden olevan antamiani
velkakirjoja rahoista, joita en milloinkaan ollut saanutkaan.
Rosenstein uhkasi minua kaikin mahdollisin keinoin, joita en nyt
muistakaan. Hänellä tuntui olevan oikeus puolellaan, koska olin
allekirjoittanut nuo paperit. Keményn András tuli silloin luokseni. Hän
tukki juutalaisen suun kullalla, lunasti nuo paperit minulle takaisin ja
maksoi tämän rakennuksen kiinnityksen, josta Rosenstein uhkasi
karkoittaa meidät pois. Maa oli kumminkin jo hänen omaisuuttaan.
Sinä, minä ja äitisi olisimme muuttuneet samanlaisiksi kerjäläisiksi
kuin kaikki kodittomat mustalaiset. András kertoi rakastavansa sinua
ja haluavansa mennä kanssasi naimisiin. Hän sanoi maiden siten
joutuvan sinun ja lastesi omaisuudeksi. Mitä voinkaan tehdä?
Puukko uhkasi kurkkuani — ja minä suostuin».

Ilonka ei sanonut mitään. Hän tuijotti isäänsä kalpein kasvoin ja


toivottomin, hämmästynein ilmein.

»Hän maksoi tämän talon kiinnityksen, otti maat haltuunsa ja


rupesi hoitamaan niitä niinkuin hän ainoastaan kykenee hoitamaan
maatiloja. Hän omisti kaiken, mutta ei kukaan tiennyt sitä. Hän
neuvotteli kanssani kaikesta ja toimi puolestani kuin jonkunlainen
välittäjä. Joskus unohdankin kokonaan, etten ole näiden maiden
omistaja, ja annan hänelle määräyksiä, jotka hän aina toimittaa
perusteellisesti. Hän kertoi minulle kerran olevansa vain sinun
tilanhoitajasi. Tuolla miehellä on enemmän sydäntä», lisäsi
Bideskuty lyöden nyrkkinsä kovasti pöytään, »kuin kenelläkään
muulla tuntemallani henkilöllä ja…»

»Rakas isä», keskeytti Ilonka, »kerro minulle ainoastaan


tosiseikat.
Älä muserra minua häpeällä enemmän kuin on tarpeellista».

»Et ole milloinkaan kertonut äidillesi, miksi poistuit miehesi luota


eikä Andráskaan ole sanonut minulle mitään. Hääpäivänne
jälkeisenä päivänä lähetti hän minulle erään paperin, jonka luin läpi
hyvin huolellisesti. Tuossa asiakirjassa lahjoittaa hän sinulle koko
Bideskuty’n tilan, pidättäen itselleen vain oikeuden valvoa sen
hoitamista. Katsohan, hän ei oikein luota minuun», lisäsi Bideskuty
hymyillen, »enkä ole hänen mielestään mikään kelvollinen
tilanhoitaja. Mutta hän itse on suurenmoinen, Ilonka!» huudahti hän
innostuneesti. »Näet itse, miten ruhtinaallisessa kunnossa tämä talo
nyt on. Minulla on nyt aina runsaasti rahaa, ja käypää metallirahaa
päällepäätteeksi, paljon viljaa myytäväksi, ja karjani lihoo ja lisäytyy,
kuten kaikki muukin. Minulla ei ole ollut milloinkaan niin paljon
nautoja eikä vasikoita, eikä niin suuria määriä vehnää eikä maissia
myytävänä. Tuo mies tuntee jokaisen maajalan arvon. Hän huolehtii
kaikesta. Minä oleskelen vain täällä kotona, hyväksyn hänen
toimenpiteensä ja korjaan rahat, kun hän on tehnyt hyvän kaupan
puolestani… tarkoitan sinun puolestasi, Ilonka, sillä sinunhan tämä
kaikki on. Oletko milloinkaan halunnut jotakin, jota et ole saanut,
sano oletko»?

»Sitten eivät nuo rahat, joita jaoin köyhille koleeran


raivoamisaikana, tulleetkaan sinulta, vaan häneltä»? kysyi Ilonka
tyynesti.

»Ei, ei oikeastaan häneltäkään, lapseni, sillä omaisuushan kuuluu


sinulle».

»Hänkö on lahjoittanut sen minulle»?

»Niin, hänhän on miehesi».

»Niin», sanoi Ilonka kiihkeästi, kyynelten värisyttämin äänin, »hän


on mieheni. Hän maksoi suunnattomasti huvista saada nimittää
Bideskuty’n kreivin pennitöntä tytärtä vaimokseen. Voi, miten
häpeällistä tämä kaikki onkaan»! lisäsi hän vihaisesti. »Kuinka te
voittekaan, ah, kuinka te voittekaan»?
»En ymmärrä, miksi puhut häpeästä. Lukuunottamatta sitä, että
olet nähtävästi riidellyt miehesi kanssa, ei siinä ole mitään
häpeällistä. Äitisi ja minä olemme riidelleet aikoinamme paljonkin,
mutta hän ei ollut kumminkaan niin itsepäinen, että hän olisi juossut
tiehensä. Tuollaiset riidat unhottuvat kyllä pian».

»Unhottuvat pian! Ah, isä, sinä et tiedä etkä ymmärrä».

Ilonka nyyhkytti nyt kiihkeästi, ja kätki kasvonsa käsiinsä


toistaessaan:

»Ah, millainen ääretön häpeä! Kuinka te voittekaan»?

»En näe tässä minkään toivottomuuden syytä», sanoi Bideskuty


hieman hermostuneesti. »En ymmärrä, mikä teitä naisia oikeastaan
vaivaa, kun te aina kiusaatte muita teoillanne. Halusit tietää ja pakotit
minut kertomaan vastahakoisesti asioista, joita äitisi mielestä sinun
ei ollenkaan olisi pitänyt saada tietää. Sanon vieläkin kerran, etten
huomaa tässä minkäänlaista itkun syytä».

»Ei olekaan, isä», sanoi Ilonka kuivaten nopeasti silmänsä ja tullen


aivan isänsä viereen. »Kuten sanoit, halusin tietää ja nyt olet
kertonut minulle. Olen sinulle hyvin kiitollinen».

»Et suinkaan aio kertoa äidille»? kysyi kreivi levottomasti.

»En», vastasi Ilonka hymyillen kyyneliensä läpi isänsä levottomalle


kasvojen ilmeelle. »En aio puhua asiasta hänelle sanaakaan, sillä
mitäpä se hyödyttäisi. Menen hänen luokseen nyt katkomaan noita
kukkia».

Sanottuaan sen kumartui hän suutelemaan isäänsä.

Вам также может понравиться