Chancellor Angela Merkel has likened the test Germany faces in coping with a flood of refugees to the challenge of reunifying the country 25 years ago and called on citizens to show flexibility, patience and openness.

At a 90-minute news conference at which she was peppered with questions on a range of subjects, including the euro zone, the Ukraine conflict and Iran, Mrs Merkel described Europe's asylum crisis as a "huge national challenge" that would drag on for years.

Her government has said it expects roughly 800,000 people to seek asylum in Germany this year, nearly four times as many as last year and far more than any other country in the EU which is reeling from its biggest refugee influx since the Second World War.

The flood of people, many fleeing conflict in nations like Syria and Iraq, has overwhelmed local communities and provoked an ugly backlash from far-right militants who have held anti-refugee protests and set fire to nearly 200 shelters.

"There are many examples where we have shown what we are capable of handling," Mrs Merkel said pointing to the global financial crisis, the phase-out of nuclear power and the merger of East and West Germany a quarter of a century ago. "We stand before this kind of challenge today."

"German thoroughness is great," she added. "But what we need now is German flexibility."

Mrs Merkel said Germany must speed up the vetting of asylum applications, build more centres for new arrivals and ensure the costs of tackling the crisis were fairly shared between the federal government, states and municipalities.

In some of her strongest language to date, she also promised "zero tolerance" towards hate crimes and harassment of refugees.

Earlier this month, a protest against refugees in the eastern town of Heidenau turned violent, with far-right activists pelting police with bottles and rocks, and some shouting "Heil Hitler".

She described the discovery of 71 dead migrants in an abandoned truck in Austria last week as an "unfathomable atrocity".